React Native百分比marginTop/Bottom导致子组件截断问题问询
我遇到了React Native中的布局截断问题,先说明我已经完成了以下排查步骤:
- 已查阅React Native官方文档
- 已搜索现有Issue
- 正在使用最新版本的React Native
- 已关联Issue #19164
问题现象
- iOS端:当使用百分比设置
marginBottom或marginTop时,内部子组件(已测试Text和View组件)会被截断。测试设备包括:模拟器iPhone 5s、iPhone 7、iPhone X,真机iPhone 6s。 - Android端:仅偶尔在View组件上出现该问题,测试设备为Samsung S5 mini。
另外发现几个特殊触发规律:
- 设置
marginHorizontal:"20%"或移除主View的flex:1属性时,该问题不会出现; - 但有时即使没有
flex:1属性,问题仍会发生,推测存在一组特定的属性组合会触发该问题; - 该问题在React Native V0.53.3版本中不存在。
环境信息
- 操作系统:macOS High Sierra 10.13.4
- Node:9.8.0
- Yarn:1.6.0
- npm:6.0.0
- Watchman:4.9.0
- Xcode:Xcode 9.3 版本号9E145
- Android Studio:3.1 AI-173.4720617
- 依赖包:react: 16.3.1,react-native: 0.55.3
复现步骤
可以通过以下代码复现问题:
<View style={{ flex: 1, justifyContent:'center',alignItems:'center'}}> <View style={{ marginTop: "8%"}}> <Text style={{ fontSize: 40, fontWeight: '700' }}>ASdsad</Text> </View> </View>
预期行为
子组件不会被截断。
实际行为
子组件被截断。
内容的提问来源于stack exchange,提问作者Flavio_Lima
相关产品推荐
相关产品推荐

