NavigatorIOS栏和ListView Section Header之间的额外空间

时间:2015-06-30 16:28:36

标签: react-native

我的results = dlply(eyeData, c("sNumber", "TrialNo"), ordFit_stats) 导航栏和我的NavigatorIOS部分标题之间有一些空格:

enter image description here

如何删除该空间?我希望节标题与我的导航栏齐平。

2 个答案:

答案 0 :(得分:2)

看起来这个错误是因为一些情况已经被改变了。以下是以前的架构:

index.ios.js包含NavigatorIOS组件,其InitialRouteMain组件,涉及TabBarIOS,可根据Home呈现视图或Collections被选中。

ListView位于此Home组件内,基本上只有几层深。

以下是我修复它的方法:

index.ios.js中,我将NavigatorIOS替换为仍然指向Navigator的{​​{1}}:

Main

renderScene: function(route, navigator) { var Component = route.component; return ( <View style={styles.container}> <Component route={route} navigator={navigator} topNavigator={navigator} /> </View> ) }, render: function() { return ( <Navigator sceneStyle={styles.container} ref={(navigator) => { this.navigator = navigator; }} renderScene={this.renderScene} tintColor='#D6573D' barTintColor='#FFFFFD' titleTextColor='#D6573D' navigationBarHidden={true} initialRoute={{ title: 'Product Kitty', component: Main, }} /> ); } 仍然保留Main,但TabBarIOSrender的{​​{1}}方法现在都会呈现自己的Home组件:

Collection

根据此更改,NavigatorIOS render: function() { return ( <TabBarIOS> <Icon.TabBarItem title='Home' selected={this.state.selectedTab === 'products'} iconName={'home'} iconSize={20} onPress={() => { if (this.state.selectedTab !== 'products') { this.setState({ selectedTab: 'products' }); } else if (this.state.selectedTab === 'products') { this.refs.productRef.popToTop(); } }}> {this.renderProductView()} </Icon.TabBarItem> <Icon.TabBarItem title="Collections" selected={this.state.selectedTab === 'collections'} iconName={'list'} iconSize={20} onPress={() => { if (this.state.selectedTab !== 'collections') { this.setState({ selectedTab: 'collections' }); } else if (this.state.selectedTab === 'collections') { this.refs.collectionRef.popToTop(); } }}> {this.renderCollectionView()} </Icon.TabBarItem> </TabBarIOS> ) }, renderProductView: function() { return ( <NavigatorIOS style={styles.container} tintColor='#D6573D' barTintColor='#FFFFFD' titleTextColor='#D6573D' ref='productRef' initialRoute={{ title: 'Product Kitty', component: Products }} /> ) }, renderCollectionView: function() { return ( <NavigatorIOS style={styles.container} tintColor='#D6573D' barTintColor='#FFFFFD' titleTextColor='#D6573D' ref='collectionRef' initialRoute={{ title: 'Collections', component: Collections, passProps: { accessToken: this.state.accessToken } }} /> ) } 之间水平空间的额外像素问题消失了:

enter image description here

答案 1 :(得分:1)

检查listView样式,如果样式为“marginTop”,则将其设为0

相关问题