wan*_*gii 37
看看flexbox doc.在样式表中,使用:
flex:1,
Run Code Online (Sandbox Code Playgroud)
Tsi*_*ina 37
将窗口高度抓取到变量中,然后将其指定为要定位的Flex容器的高度:
let ScreenHeight = Dimensions.get("window").height;
Run Code Online (Sandbox Code Playgroud)
在你的风格:
var Styles = StyleSheet.create({ ... height: ScreenHeight });
Run Code Online (Sandbox Code Playgroud)
请注意,您必须在使用之前导入Dimensions:
import { ... Dimensions } from 'react-native'
Run Code Online (Sandbox Code Playgroud)
小智 16
您只需添加height: '100%'到项目的样式表中即可.这个对我有用
flex:1应该适用于几乎任何情况。但是,请记住 for ScrollView,它contentContainerStyle控制视图的高度:
错误的
const styles = StyleSheet.create({
outer: {
flex: 1,
},
inner: {
flex: 1
}
});
<ScrollView style={styles.outer}>
<View style={styles.inner}>
</View>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)
正确的
const styles = StyleSheet.create({
outer: {
flex: 1,
},
inner: {
flex: 1
}
});
<ScrollView contentContainerStyle={styles.outer}>
<View style={styles.inner}>
</View>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)
大部分时间应该使用flexGrow: 1或flex: 1
或者你可以使用
import { Dimensions } from 'react-native';
const { Height } = Dimensions.get('window');
styleSheet({
classA: {
height: Height - 40,
},
});
Run Code Online (Sandbox Code Playgroud)
如果它们都不适合您,请尝试:
container: {
position: 'absolute',
top: 0,
bottom: 0,
left: 0,
right: 0,
}
Run Code Online (Sandbox Code Playgroud)