【发布时间】:2019-06-01 10:59:08
【问题描述】:
我正在使用离子框架 3(v 3.9.2)。我使用顶部导航中的搜索栏,并在内容下方的列表中显示结果。很标准。 但是,由于用户操作(例如,用户单击取消或单击键盘上的搜索按钮),键盘会显示直到我明确关闭它(在我的代码中使用 this.keyboard.hide() )。我使用 Ionic 的键盘插件。
理想情况下,我希望在用户开始滚动搜索结果时也隐藏键盘,尤其是当他们在搜索输入框中键入时开始显示结果时。 Android 和 iOS 上的行为相同 - 实际设备
这是我尝试过的: 1.在ion-content上,我监听一个滚动开始事件,然后调用键盘隐藏函数。但它是片状的。键盘有时会弹出两次,一直没有关闭。 2.我可以关闭“键入时显示结果”并强制用户显式单击搜索或取消我隐藏工作正常的键盘,但这不是我想要的用户体验。 3. 当我开始滚动时触发模糊事件(ionBlur)时,我尝试查看是否可以隐藏键盘,但从未触发模糊
有什么建议吗?
【问题讨论】:
-
this:“在离子内容上,我监视滚动开始事件,然后调用键盘隐藏功能”方法是有效的。您能否分享您的代码并提供有关意外行为的更多详细信息 - 这可以修复。
-
感谢谢尔盖的回复。这就是我所做的。在 HTML 中,我这样做了:
…………。并在 TS 文件中: onScroll(event:Event) { console.log('Scroll start fire'); this.keyboard.hide(); } -
当我在 Android 中测试时,滚动启动事件触发良好,键盘有时隐藏有时不隐藏。有时它会隐藏并再次出现,我必须再次滚动才能隐藏它。不幸的是,它是不可预测的,并且无法始终如一地重现它。谢谢
-
我明白了,让我建议如何在几个小时内解决它
标签: ionic-framework keyboard ionic3 hide