#react-native #scrollview
#реагировать-родной #scrollview
Вопрос:
Несколько дней назад, работая над приложением для общения в чате, я столкнулся с проблемой, которую не смог решить. Я должен был сохранить ввод текста в режиме прокрутки, но он там не появлялся, вот код :
<MyStatusbar />
<MyHeader title = 'Jane Doe' color = '#6a11cb'/>
<ImageBackground style = { styles.IMG } source = { images.gradient_1 }>
<ScrollView>
<Text style = { styles.disclaimer }>Content is Encrypet as per a private database. Oval Inc Corp will not be held responsile for any leaks within Images.</Text>
{
this.state.MessageArray.map((message) => {
return(
<View key = { message }>
<TouchableOpacity
onPress = {() => {
}}
>
<Text style = { isNaN(message) ? styles.goingMessages : styles.incomingMessages } >{ isNaN(message) ? message : this.state.MessageArray2[message] }</Text>
</TouchableOpacity>
</View>
);
})
}
</ScrollView>
<View>
<TextInput style = { styles.orInput1 } placeholder = 'Type Here...' />
</View>
</ImageBackground>
Заранее спасибо!
Комментарии:
1. Он появлялся раньше?
2. Вы должны установить
flex: 1
в contentContainerStyle3. Да, он появился, когда я поместил ввод перед ScrollView, и спасибо за гибкость: 1!
Ответ №1:
Это может помочь
<ImageBackground
style={{flex: 1, width: "100%", height: "100%",}}
source={images.gradient_1}>
<View style={{ flex: 1 }}>
<ScrollView>... ...</ScrollView>
</View>
<View>
<TextInput style={styles.orInput1} placeholder="Type Here..." />
</View>
</ImageBackground>;
const styles = StyleSheet.create({
backgroundImage: {
flex: 1,
width: "100%",
height: "100%",
},
});
Комментарии:
1. Большое вам спасибо! Ваш код подал мне идею. Когда это не сработало, я пробовал это везде, оказывается, это работает, когда вы применяете его к представлению, где существует ввод текста.
Ответ №2:
Я вижу, что вы написали текст вместо TextInput это ошибка? Если это так, то это просто синтаксическая ошибка, которая сломала ваше приложение