android – EditText:切换InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS

android – EditText:切换InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS,第1张

概述我通过扩展 android.widget.EditText创建了一个自定义的EditText. 当EditText具有焦点时,我希望只有可见的自动正确跨度.所以我调用setInputType(INPUT_NO_FOCUS);在构造函数中: @Overrideprotected void onFocusChanged(boolean focused, int direction, Rect pre 我通过扩展 android.Widget.EditText创建了一个自定义的EditText.

当EditText具有焦点时,我希望只有可见的自动正确跨度.所以我调用setinputType(input_NO_FOCUS);在构造函数中:

@OverrIDeprotected voID onFocusChanged(boolean focused,int direction,Rect prevIoUslyFocusedRect) {    super.onFocusChanged(focused,direction,prevIoUslyFocusedRect);    if (focused) {        setinputType(input_FOCUS);    } else {        setinputType(input_NO_FOCUS);    }}

有:

private final int input_NO_FOCUS = TYPE_CLASS_TEXT | inputType.TYPE_TEXT_FLAG_MulTI_liNE        | inputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS;private final int input_FOCUS = TYPE_CLASS_TEXT | TYPE_TEXT_FLAG_MulTI_liNE        | inputType.TYPE_TEXT_FLAG_auto_CORRECT | inputType.TYPE_TEXT_FLAG_auto_COMPLET;

==>确实没有自动更正和自动完成,但在单击EditText后它不会出现.输入类型已成功更改.

如何触发自动更正/添加自动完成?

//编辑:

用户案例我想存档:

> MyEditText扩展EditText视图显示而不是焦点.文本上没有拼写检查( – >文本下没有红色跨度/行)
>用户点击编辑字段即可. – >拼写检查被触发 – >出现红线(用户可以点击拼写错误的单词并让 *** 作系统更正)
>用户点击另一个VIEw元素 – >红线/跨度消失.

解决方法 我担心没有好办法做到这一点.问题是AndroID框架实际上没有一种机制来在输入类型发生变化时告诉键盘.键盘通常在字段打开时检查类型.在那之后,如果类型改变,它将不会知道,除非它轮询它,我不认为任何现有的键盘这样做. 总结

以上是内存溢出为你收集整理的android – EditText:切换InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS全部内容,希望文章能够帮你解决android – EditText:切换InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1126880.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存