我有以下剥离渲染结果:
return (
<View style={{backgroundColor:'red'}}>
<TextInput value={'Hello'}/>
</View>
);
生成的TextInput在iOS中不可见,除非我指定高度,并且在使用flexDirection时:&#39; row&#39;在它的容器中,我也需要指定它的宽度。
这只适用于iOS,Android似乎按预期工作。
有没有一种在没有固定大小的iOS中显示TextInput的方法?
当前依赖关系:
"dependencies": {
"react-native": "=0.18.1",
"react-native-orientation": "=1.12.2",
"react-native-vector-icons": "=1.1.0"
},
iOS:
Android:
像这样更改渲染:
return (
<View style={{backgroundColor:'red'}}>
<Text>text</Text>
<TextInput value={'Hello'}/>
</View>
);
有以下结果:
的iOS:
机器人:
答案 0 :(得分:31)
您需要为textInput定义高度。尝试:
RewriteCond %{QUERY_STRING} (.*)(?:^|&)lang=(?:[^&]*)((?:&|$).*)
RewriteCond %1%2 (^|&)([^&].*|$)
RewriteRule ^somepage.php$ somepage.php?%2
或者,如果您不想在TextInput上定义高度,可以在包含视图上定义高度,并在TextInput上定义flex:1:
return (
<View style={{backgroundColor:'red'}}>
<Text>text</Text>
<TextInput style={{ backgroundColor: '#ededed', height: 60 }} value={'Hello'}/>
</View>
);
答案 1 :(得分:1)
遇到同样的问题,但是当我从alignItems:'center'
函数中的最顶层父视图中删除render()
时,它就会呈现。
答案 2 :(得分:0)
当我们在react-native中使用TextInput时,默认情况下TextInput将不会扩展以填充可用的空间,而是必须添加样式规则,即TextInput应该有多大。您无法显示TextInput
答案 3 :(得分:0)
使用stye={{color:'black'}}
。
这解决了问题。