Nativescript:如何在 android 上关闭对 textField 的预测?

Nativescript: how to turn off predictions for textField on android?

所以我正在用打字稿编写我的应用程序,我想禁用当您在输入中输入内容时出现的预测。即使在设备上启用了它们,我也想禁用它们。我得到了对我的输入 (textField) 元素的引用,这是有效的:

this.page.getViewById("place")

在 nativescript 文档中,我没有看到以编程方式关闭预测的选项,但我知道这可以通过使用 setInputType 方法并传递标志的本机函数 (https://developer.android.com/reference/android/widget/EditText.html) 来完成TYPE_TEXT_FLAG_NO_SUGGESTIONS

所以我这样访问原生函数:

var input_type = new android.text.InputType("TYPE_TEXT_FLAG_NO_SUGGESTIONS");

this.page.getViewById("place").android.setInputType( input_type );

但我想我初始化 InputType class 不正确,因为它会引发错误:

First argument must be implementation object

啊,看在上帝的份上,终于用这个了:

this.page.getViewById<textFieldModule.TextField>("place").android.setInputType(android.text.InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | android.text.InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);

只是为了扩展@Starwave 解决方案,您可以在 TextField 上设置(加载)事件,然后在内部触发禁用建议,如下所示

onTextFieldLoaded(args) {
  let textfield: TextField = <TextField>args.object;
  if (isAndroid) {
    textfield.android.setInputType(
      android.text.InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | 
      android.text.InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
    );
  }
}