EditText不显示当前输入(Android 4)

我的Android应用程序包含一个EditText视图,您可以在其中键入一些短消息(单行).按键盘的DONE键将消息附加到上面的日志视图(TextView)并清除输入视图.

这是我的视图xml的片段:

要处理输入并重置视图,我使用OnEditorActionListener.

@Override
public boolean onEditorAction(TextView v,int actionId,KeyEvent event) {
    ...
    String input = mInputView.getText().toString();
    mInputView.setText(""); // clear the input view
    ...
}

问题

我没有在Android 1.6 – 3上遇到任何问题.但是从IceCreamSandwich(> = Android 4)开始,有一个奇怪的错误,间歇性地发生(在大多数情况下在~10-30输入之后).

键入一些文本时,输入视图保持空白.光标仍然在位置0上闪烁,不显示任何文本.虽然单击DONE会将(不可见)文本添加到上面的日志视图中,但可以读取文本.同时隐藏键盘使EditText视图中的文本可见.

如接受的答案所述,这是一个(并非如此)已知的Android操作系统错误.简单的解决方案是以不同的方式清除EditText视图:

TextKeyListener.clear(mInputView.getText());
最佳答案
我有完全相同的问题,即使在较低的API级别.使用时有一个错误

editText.setText("");

多次清空EditText.这是一个有用的解决方法

TextKeyListener.clear(editText.getText());

您可以在Google Code网站上阅读有关此错误的信息:http://code.google.com/p/android/issues/detail?id=17508

希望能帮助到你!

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...