Reactjs 为什么是;flex"-属性在react native中不再工作?
使用React Native 0.26,当将“Reactjs 为什么是;flex"-属性在react native中不再工作?,reactjs,react-native,flexbox,Reactjs,React Native,Flexbox,使用React Native 0.26,当将“flex:1”传递到标题,将“flex:9”传递到另一个视图时,我可以按1:10的比例设计带有标题和大面板的屏幕 但是,对于最新的React Native>0.40,这将不再有效 我的风格有什么问题? 这是渲染函数: 现在发生了这种情况: flex:1是否工作,以及height-属性是否工作。是否传递这些属性并不重要。它总是将屏幕划分为两个高度相同的子视图: 我想要实现的是为灰色区域提供20像素或屏幕10%的高度。对于scrollview,尝试使用
flex:1
”传递到标题,将“flex:9
”传递到另一个视图时,我可以按1:10的比例设计带有标题和大面板的屏幕
但是,对于最新的React Native>0.40,这将不再有效
我的风格有什么问题?
这是渲染函数:
现在发生了这种情况:
flex:1
是否工作,以及height
-属性是否工作。是否传递这些属性并不重要。它总是将屏幕划分为两个高度相同的子视图:
我想要实现的是为灰色区域提供20像素或屏幕10%的高度。对于scrollview,尝试使用“contentContainerStyle”属性传递样式。您应该将ListView标记包装在视图中,并将样式放在视图上:
这是我的头球
您想要哪一个?10%还是20像素?您可以从progressBar
中删除alignSelf
,这不是您需要的。
render() {
return (
<View style={s.container}>
<View style={s.progressBar}>
<Progress.Bar progress={this.state.progress} width={200} />
</View>
<ListView
style={s.listView}
enableEmptySections={true}
keyboardShouldPersistTaps="always"
keyboardDismissMode="on-drag"
dataSource={this.state.dataSource}
renderRow={(contact) => this._renderContact(contact)}
/>
</View>
)
}
const s = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
progressBar: {
flex: 1,
backgroundColor: 'lightgray',
height: 20,
alignSelf: 'stretch',
},
listView: {
flex: 10,
alignSelf: 'stretch',
}
});