阵营本地TextInput和FlatList捕获的列表项
问题描述:
onPress所以我想创建一个自动完成搜索框有2兄弟看待TextInput和FlatList所以我的渲染功能如下(其中当this.state.data.length> 0
只显示): -阵营本地TextInput和FlatList捕获的列表项
renderItem = ({ item }) => {
return (
<TouchableOpacity
onPress={(item) => {/* do something here */}}>
<Text>{item.key}</Text>
</TouchableOpacity>
);
}
render(){
return (
<View>
<TextInput />
{this.state.data.length > 0 &&
<FlatList
data={this.state.data}
renderItem={this.renderItem} />}
</View>);
}
问题是当我点击列表项时,第一次点击触发TextInput
回调onEndEditing
,然后第二次点击触发列表项的TouchableOpacity
的onPress
。
如何在第一次点击时触发列表项的onPress?
答
它是在反应天然活性issue。
与此同时,您可以尝试在ScrollView
中处理keyboardShouldPersistTaps
物业。
return (
<ScrollView
style={ styles.flex }
automaticallyAdjustContentInsets={ false }
keyboardShouldPersistTaps="handled"
contentInset={{ 'bottom':20 }}
keyboardDismissMode='on-drag'
>
<View>...</View>
</ScrollView>
);
非常感谢您的快速回答:) – aprofromindia
肯定伟大的帮助:) – locropulenton