Das ist, was ichReagieren india DrawerLayoutAndroid ref nicht
<DrawerLayoutAndroid
ref={'drawer'}
drawerWidth={300}
drawerPosition={DrawerLayoutAndroid.positions.Left}
renderNavigationView={() => {
return navigationView;
}}>
<Navigator
ref={'navigator'}
initialRoute={initialRoute}
navigationBar={
<Navigator.NavigationBar
routeMapper={NavigationBarRouteMapper}
style={{ backgroundColor: '#68758E', height: 50 }}
/>
}
configureScene={(route, routeStack) => {
return Navigator.SceneConfigs.HorizontalSwipeJump;
}}
renderScene={(route, navigator) => {
console.log(this, this.refs);
if (this.refs.appDrawer) {
console.log(this.refs.appDrawer);
}
if (self.backButtonEventAdded === false) {
BackAndroid.addEventListener('hardwareBackPress', function() {
if (navigator && navigator.getCurrentRoutes().length > 1) {
navigator.pop();
return true;
}
return false;
});
self.backButtonEventAdded === true;
}
if (route.id == 0) {
return (
<HomePage navigator={navigator} />
);
}
if (route.id == 1) {
return (
<RingtonePage ringtone={route.ringtone} />
);
}
}}
/>
</DrawerLayoutAndroid>
Jetzt im renderScene Methode der Navigator bisher haben die erste Zeile protokolliert this
und this.refs
console.log(this, this.refs)
Wenn ich this
im Chrom inspizieren hat es die richtige Refs darauf gesetzt, aber die zweite this.refs
ist und leeres Objekt. Warum das ?
das Refs-Objekt ist nicht verfügbar für mich in diesem, dass Sie in _openDrawer-Methode verwenden, welche Version von Reactive-native verwenden Sie? Ich benutze 0.25 –
Ich benutze 0.2.0! Hast du deinen DrawerLayoutAndroid in deiner Rendermethode() aufgerufen? – Mayeul