«DrawerOpen» работает, но невидимое содержимое в реагирует на - PullRequest
0 голосов
/ 24 мая 2018

Используя «реактивный»

«Реакция»: «16.0.0»,

«Реактивный»: «0.50.4»,

и «Использование»response-navigation 1.0 '

все работает хорошо, но когда я нажимаю на меню ящика, чтобы открыть, оно работает, чтобы открыть, но его невидимое показывает только цвет подложки (черный)

я пытался удалить компонент заголовка надругой стековый навигатор .. или ищите проблему внутри DrawerComponent.но до сих пор не могу понять.

все работало нормально, когда я не переключался на Tab Navigation, но мне нужно было добавить Tab Navigator, поэтому изменил его.

, пожалуйста, помогите мне

problem

const RootNavigator = StackNavigator({
  Init : { screen : InitComponent },
  Root : { screen : TabStack },
 })

const TabStack = TabNavigator({
    DrawerStack: { screen : DrawerStack, },
    AddrDrawerStack : {screen : AddrDrawerStack},
    StorageDrawerStack : {screen : StorageDrawerStack},
},
{
   navigationOptions:({navigation})=>({
   header:<HeaderContainer navigation={navigation} />,
   tabBarIcon : ({focused, tintColor}) =>{
    const { routeName } = navigation.state;
    return <FontAwesome size={25} color={tintColor}>{icon}</FontAwesome>;
   },
 }),
  tabBarComponent: TabBarBottom,
  tabBarPosition: 'bottom',
  tabBarOptions: {
  activeTintColor: 'tomato',
  inactiveTintColor: 'gray',
},
//animationEnabled: false,
swipeEnabled: true,

 })


  const DrawerStack = DrawerNavigator({    
    MailStack : {screen: MailStack},
   }, {
    gesturesEnabled: false,
    contentComponent: DrawerContainer,

   })

** DrawerContainer.js **

class DrawerContainer extends React.Component {


  constructor(props, context){
    super(props,context);

    this.state = {
      selectMenu: false,
    }
    this.props.getMailboxMenuList();
    this.menuClick = this.menuClick.bind(this);

  }


  menuClick(menuName){  

    this.setState({
        selectMenu: true,
    });
    this.props.mailBoxChange(menuName)
    this.props.navigation.navigate("DrawerStack", {menu:menuName});
  }



  render() {


    const { navigation, mailboxMenuList } = this.props;


   if(!mailboxMenuList){

    return (

      <View style={styles.container}>
          <Text>try again</Text>    
     </View>

     )
   }    

    return (

      <View style={styles.container}>
         <View style={styles.menuMailTop}> 

             <TouchableHighlight 
               onPress={()=>{this.props.navigation.navigate("PostScreen",{type:'write'})}}
               style={styles.menuMailBoxBtn} >
                <Text> write </Text>
           </TouchableHighlight> 

        </View>

        <View>
          {
            mailboxMenuList.items? <BasicMailBox 
                                        mailList={mailboxMenuList.items}
                                        onReloadClick={this.props.reloadExternalMailbox.bind(this)}
                                        externalLoading={this.props.externalLoading}
                                        selectMenu ={this.state.selectMenu}
                                        menuClick={this.menuClick.bind(this)} />
            :<View></View>
          }
      </View>         
  </View>

  ) }
  }

** Метод открытия ящика **

  <TouchableHighlight
       onPress= {() => {  
              //when i press this, index indicates 0  
            if (navigation.state.index === 0) {
                                         navigation.navigate('DrawerOpen')
                                      //  navigation.openDrawer()
                                  } else {
                                        navigation.navigate('DrawerClose')
                                  }
                                }
                          } >
                    </TouchableHighlight>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...