当使用Nativescript为iOS选择文本字段时,点击堆栈视图上的操作无法正常工作
所以我使用Nativescript为Android和iOS创建应用程序,iOS出现了一些问题 所以我有一个堆栈视图,我在其中添加了一个点击动作,称为“closeKeyboard”(目前只是将消息记录到控制台)。 在堆栈视图中,我有一个文本字段。 问题是,当我按下文本字段时,堆栈视图操作也会被触发 在Android上,它可以按预期工作-选择文本字段不会触发堆栈视图操作 下面是main-page.xml的代码当使用Nativescript为iOS选择文本字段时,点击堆栈视图上的操作无法正常工作,ios,nativescript,Ios,Nativescript,所以我使用Nativescript为Android和iOS创建应用程序,iOS出现了一些问题 所以我有一个堆栈视图,我在其中添加了一个点击动作,称为“closeKeyboard”(目前只是将消息记录到控制台)。 在堆栈视图中,我有一个文本字段。 问题是,当我按下文本字段时,堆栈视图操作也会被触发 在Android上,它可以按预期工作-选择文本字段不会触发堆栈视图操作 下面是main-page.xml的代码 <Page xmlns="http://schemas.nativescript.o
<Page xmlns="http://schemas.nativescript.org/tns.xsd" navigatingTo="onNavigatingTo">
<StackLayout tap="closeKeyboard">
<Label class="conf-button-label" text="Netto sum" />
<TextField text="{{ sum }}" hint="Type number" returnKeyType="done" keyboardType="number" keyboardPatter="[0-9]*" returnPress="done" id="sum" col="0" row="0" class=""/>
</StackLayout>
</Page>
<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="loaded">
<StackLayout id="stack">
<Label text="Tap the button" class="title"/>
<Button text="TAP" tap="{{ onTap }}" />
<Label text="{{ message }}" class="message" textWrap="true"/>
<TextView id="text" text="" hint="Enter some text" backgroundColor="yellow" updateTextTrigger="focusLost"/>
</StackLayout>
</Page>
有人能帮我吗?我想唯一的办法是将
closeKeyboard()
从Stacklayout移动到子视图标签。或者,您可以尝试为textfield定义一个单独的点击操作,以覆盖stacklayout的点击操作。如果您想创建类似javascript模糊事件的内容或只是为了隐藏键盘,当您在TextView外部点击时,您可以使用本机代码为ios设置自定义手势。您可以查看下面附带的示例:
main-page.xml
<Page xmlns="http://schemas.nativescript.org/tns.xsd" navigatingTo="onNavigatingTo">
<StackLayout tap="closeKeyboard">
<Label class="conf-button-label" text="Netto sum" />
<TextField text="{{ sum }}" hint="Type number" returnKeyType="done" keyboardType="number" keyboardPatter="[0-9]*" returnPress="done" id="sum" col="0" row="0" class=""/>
</StackLayout>
</Page>
<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="loaded">
<StackLayout id="stack">
<Label text="Tap the button" class="title"/>
<Button text="TAP" tap="{{ onTap }}" />
<Label text="{{ message }}" class="message" textWrap="true"/>
<TextView id="text" text="" hint="Enter some text" backgroundColor="yellow" updateTextTrigger="focusLost"/>
</StackLayout>
</Page>
然而,GitHub问题中也讨论了同样的问题 非常感谢。这真的帮了我很大的忙。但,也许你们知道当键盘关闭时,我该如何做一些动作?在我当前的项目中,只有当我按下键盘上的“完成”键时,计算才会完成,但在键盘关闭后提交输入将非常棒。我相信在IOS中,它被称为UIKeyboardWillHidenotifications,您可以将属性更改事件侦听器添加到文本字段。在这种情况下,您还应该将
updateTextTrigger=“focusLost”
添加到textfield,只有当textfield失去焦点时,它才会返回text属性的全部值。您可以在此处查看文章-