从Nativescript中的TextView中解除键盘的正确方法

时间:2016-10-26 09:08:48

标签: textview uitextview nativescript

我有以下TextView:

unique_ptr

我正在尝试正确实现它,以便:

  • 当用户按下“完成”时,键盘消失
  • 当用户触摸TextView(键盘)的外部(模糊)时 消失
  • 也许当专注于TextView时,向上滚动以便其余部分 键盘后面的视图没有消失? (还不确定这个 一个)

我不清楚如何实现这一目标。我需要实现什么样的后端代码?

理想情况下,我正在寻找适用于iOS和Android的解决方案。

1 个答案:

答案 0 :(得分:11)

当用户按完后,键盘消失

对于这个,您可以将监听器放到textview中,以便在用户按下done按钮时触发它。当我查看NativeScript API时,此侦听器仅适用于TextField,但您可以尝试使用TextView:

在XML中:

<TextField returnPress="doneTap"/>

在.js文件中:

function doneTap(args) {
    var myTextField = args.object;
    myTextField.dismissSoftInput();
}
exports.doneTap = doneTap

当用户触摸TextView的外部(模糊)时,键盘消失

对于这个,您将把一个监听器放到TextField的父视图中。当您点击外部时,它将调用隐藏键盘的功能。好的是,这个监听器将被TextField tap重写。因此,当您点击TextField时,键盘仍会显示。您可以找到答案here

当关注TextView时,向上滚动以使视图的其余部分不会消失在键盘后面?

使用此plugin阻止键盘覆盖文本字段