专门用于在TabBarIOS.item的子组件内编写回调,该组件在选择Tab时触发。 (React Native中的TabBarIOS)
答案 0 :(得分:2)
ViewDidAppear和ViewWillAppear没有针对标签的回调。您可以在TabIOSItem子组件中传递类似isTabAcitve的prop。并根据isTabActive值实现您的子组件。您的代码TabBarIOSItem可能如下所示:
<TabBarIOS.Item
title=""
selected={this.isTabActive("my-account-tab")}
icon={require("./img/user-tab.png")}
onPress={() => {
this.setState({activeTab:"my-account-tab"});
}}>
<MyAccountTabisTabActive={this.isTabActive("my-account-tab")} />
</TabBarIOS.Item>
isTabActive可以是组件中包含TabIOS的方法:
isTabActive(tabName)
{
return this.state.activeTab == tabName;
}
TabBarIOS也不会立即渲染所有选项卡,只有在第一次按下该选项卡时,才会初次化并挂载TabBarIOS子组件。因此,componentWillMount和componentDidMount也可以用作viewDidAppear和viewWillAppear的替代。