首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有意外可编辑性的安卓TextView afterTextChanged调用

具有意外可编辑性的安卓TextView afterTextChanged调用
EN

Stack Overflow用户
提问于 2017-07-17 19:26:08
回答 1查看 84关注 0票数 2

InputMethodManager

https://developer.android.com/reference/android/view/inputmethod/InputMethodManager.html

在中国InputMethod。当我输入"西安市“时,我期望日志如下所示。

代码语言:javascript
复制
afterTextChanged 西
afterTextChanged 西安
afterTextChanged 西安市

但实际的日志如下。

代码语言:javascript
复制
 afterTextChanged x
 afterTextChanged xi
 afterTextChanged 西
 afterTextChanged a
 afterTextChanged an
 afterTextChanged 安
 ....

如果我使用“快速拨号”方式输入中文单词。日志变得更糟!

代码语言:javascript
复制
E: afterTextChanged() t
E: afterTextChanged() t'x
E: afterTextChanged() t'z'z
E: afterTextChanged() t'y'y's
E: afterTextChanged() 挺有意思

代码如下。

代码语言:javascript
复制
@Override
public void afterTextChanged(Editable s) {
   Log.i(TAG, "afterTextChanged "+s.toString());
}

EN

回答 1

Stack Overflow用户

发布于 2017-07-17 20:23:03

您是否使用的是模拟Android设备,而不是真正的Android手机?我用我的手机运行同样的代码。但是日志并没有像您预期或描述的那样出来。

我的手机是Nexus 6p,Android 7.1.1,默认输入法。

它没有把单词'西安市‘放到EditText中,直到西安市被选中完成。因此,在我的例子中,当选择西安市完成时,afterTextChanged只发生一次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45143035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档