2016-01-29 38 views
10

sonucun hale şeritli aşağıdaki adres , Genişliğini de belirtmem gerekiyor. Bu, yalnızca iOS ile olurReactNative TextInput görünmeyen IOS

, Android beklendiği gibi çalışıyor gibi görünüyor.

sabit boyutta olmadan iOS bir TextInput gösteren bir yolu var mı?

Güncel bağımlılıkları: Böyle hale değiştirilmesi

enter image description here

:

"dependencies": { 
    "react-native": "=0.18.1", 
    "react-native-orientation": "=1.12.2", 
    "react-native-vector-icons": "=1.1.0" 
    }, 

iOS:

enter image description here

Android

: iOS:

enter image description here

Android: textInput için bir yükseklik tanımlamak gerekir

enter image description here

cevap

26
return (
    <View style={{backgroundColor:'red'}}> 
    <Text>text</Text> 
    <TextInput value={'Hello'}/> 
    </View> 
); 

şu sonuca sahiptir. Eğer TextInput üzerinde bir yüksekliğe tanımlamak istemiyorsanız eğer içeren görünümünde yüksekliği ve esnek tanımlayabilir,

return (
    <View style={{backgroundColor:'red'}}> 
    <Text>text</Text> 
    <TextInput style={{ backgroundColor: '#ededed', height: 60 }} value={'Hello'}/> 
    </View> 
); 

Veya: TextInput 1: Deneyin

<View style={{ height:60 }}> 
    <TextInput style={{ flex:1, backgroundColor: '#ededed' }} /> 
</View> 
+0

Evet, bunu yaparsam işe yaradığını biliyorum. Yani mevcut alanı diğer öğelerle olduğu gibi almak mümkün değil mi? – Giannis

+0

iOS'ta değil. Bunun etrafındaki tek diğer yol, konteynere bir yükseklik ve TextInput'a bir 'flex: 1 'eklemektir. Bunu göstermek için kodumu güncelledim. –

+1

backgroundColor için 'ededed' yerine '#ededed' gerekebilir. – bitsand

0

Yüzlü Aynı sorun, ancak render() işlevinin en üstteki ana görünümünden alignItems:'center' kaldırdığımda oluşturuldu.

İlgili konular