Jul*_*epe 7 javascript android reactjs react-native react-native-textinput
我目前正在 Android 上构建 React 本机移动应用程序,我意识到当输入聚焦时(用户在键盘上键入内容),单击事件不适用于其他元素。
例如,当用户在输入中键入内容时,如果用户想要单击“提交按钮”,则单击事件只会取消输入的焦点,但不会触发按钮上的单击事件。
有没有办法在输入焦点时使这两个事件发生?(取消焦点并单击都会触发的元素,就像在网页中一样)
我只发现这个主题似乎有类似的问题,但对我不起作用或者我使用错误? 当 TextInput 获得焦点时,不会触发任何触摸事件
我的代码看起来像这样:
import React, {useState} from 'react'
import { ScrollView, TextInput, TouchableOpacity} from 'react-native'
export default function App(){
return (
<ScrollView
keyboardShouldPersistTaps="always"
>
<TextInput
placeholder="Here is the input to be focused"
/>
<TouchableOpacity
style={{
backgroundColor : "#03a9f4"
}}
onPress={()=>{
console.log("Click triggered !")
}}
>
Submit form
</TouchableOpacity>
</ScrollView>
)
}
Run Code Online (Sandbox Code Playgroud)
我这样做了,它正在我的 Android 设备上运行
在ScrollView上我这样做了
<ScrollView keyboardShouldPersistTaps='handled'>
Run Code Online (Sandbox Code Playgroud)
在我的 Button 函数中,我这样做了,我从React Native导入了Keyboard并使用了Keyboard.dismiss(); 在我的登录功能上
const SignIn = async (data: any) => {
Keyboard.dismiss();
await getNotificatioPermission();
const FCMToken = await getNotificationToken();
const DeviceUUID = await getUniqueId();
const payload = {
...data,
DeviceUUID: DeviceUUID,
FCMToken: FCMToken,
};
login(payload);
};
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2835 次 |
最近记录: |