您好我在我的反应原生应用程序中使用TextInput
。我想点击TextInput
打开日期对话框。我没有找到任何工作来在TextInput
上应用点击事件。有人知道怎么做反应原生吗?
<TextInput
style={{
height: 40,
borderColor: "gray",
borderWidth: 1,
marginTop: 8
}}
underlineColorAndroid="transparent"
placeholder={strings.schedule_date}
onKeyPress={keyPress => console.log(keyPress)}
/>
答案 0 :(得分:1)
您可以使用onFocus
道具了解用户何时选择TextInput
。
<TextInput
style={{
height: 40,
borderColor: "gray",
borderWidth: 1,
marginTop: 8
}}
underlineColorAndroid="transparent"
placeholder={strings.schedule_date}
onKeyPress={keyPress => console.log(keyPress)}
onFocus={() => yourCode()}
/>
除非你有autofocus={true}
,否则这将有效。您可以在此处找到有关onFocus
的更多文档:
https://facebook.github.io/react-native/docs/textinput.html#onfocus
答案 1 :(得分:1)
在pointerEvents="none"
TextInput
示例强>
<TouchableOpacity onPress={() => console.log("Pressed")}>
<TextInput
pointerEvents="none"
/>
</TouchableOpacity>
答案 2 :(得分:1)
另一种执行TextInput单击的方法
TextInput onTouchStart
<TextInput
style={{
height: 40,
borderColor: "gray",
borderWidth: 1,
marginTop: 8
}}
underlineColorAndroid="transparent"
placeholder={strings.schedule_date}
onTouchStart={()=> console.log("Pressed...")}
editable={false}
/>
答案 3 :(得分:0)
使用 onTouchStart 属性在点击事件上调用任何函数
<TextInput
style={{
height: 40,
borderColor: "gray",
borderWidth: 1,
marginTop: 8
}}
underlineColorAndroid="transparent"
placeholder={strings.schedule_date}
onKeyPress={keyPress => console.log(keyPress)}
onTouchStart={() => "Call your function here"}
/>