DrawerLayoutAndroid反应原生

问题描述 投票:1回答:1

我正在尝试'DrawerLayoutAndroid'与抽屉里面的原生反应我添加了react-navigation'stackNavigator'来在screen.What I'm trying to do之间导航

但问题是当我在抽屉中导航它时如何将其作为普通页面全屏打开 有没有更好的方法来实现这一点(redux状态?)提前谢谢你

react-native react-navigation
1个回答
0
投票

我找到了一个解决方案,我所做的是创建一个路由页面并将其添加为根组件

routes.js

    import Main from '../screens/main';
    import Ad from '../screens/adView';
    export const AdNav = StackNavigator({
      Home:{screen:Main,
      navigationOptions:{
        header:null,
       }  
    },
      Ad:{screen:Ad,
      navigationOptions:{
        title:'Details',      
    }}
    }

    );

App.js

import {AdNav} from './src/config/routes';

export default class App extends Component<{}> {

  render() {
   return (
   <View style={styles.container}> 
       <AdNav />
   </View>
   );
  }
}

然后我将DrawerLayoutAndroid添加到抽屉布局中的主屏幕我用stackNavigator导航没有问题

带有DrawerLayoutAndroid的主屏幕

render() {
var navigationView = (
<View style={{flex: 1}}>
<Button onPress={()=>this.props.navigation.navigate('Ad')} title="go to next page"/>
</View>
 );
return (
<DrawerLayoutAndroid
      drawerWidth={300}
      drawerPosition={DrawerLayoutAndroid.positions.Left}
      renderNavigationView={() => navigationView}>
<View style={styles.container}>
{/*content*/}
</View>        
    </DrawerLayoutAndroid>

);
}
}
© www.soinside.com 2019 - 2024. All rights reserved.