2012-02-01 54 views
5

在我的应用程序中,我想要一个不接受任何输入的EditText,即XML布局中的android:editable="false"或代码中的setKeyListener(null)Android 4.0 EditText光标始终是不可见的editable = false

我只想以非常可控的方式添加字符,所以我总是用setText()以编程方式添加它,我不想让任何虚拟键盘显示出来。但是,我仍然需要EditText中的可见光标,以便用户知道编程输入的插入位置。

在Android 4.0之前,这很容易实现(android:editable="false")。在4.0中,游标显然已被删除。我试过android:cursorVisible="true"但它不起作用。

有谁知道如何都有一个可见的光标,仍然抑制在Android 4.0的输入?真的很感谢这里的任何帮助。

+1

实际上,我发现下面的解决方案在模拟器上工作,但是当我稍后在设备上进行测试时,在EditText内部单击时仍会出现键盘。另一个解决方案(特定于Android 4.0及更高版本)似乎在设备上工作以及给这里:http://code.google.com/p/android/issues/detail?id=27609 – andrrs 2012-10-03 20:25:51

回答

2

请尝试

android:clickable="false" 
+0

是的,它似乎几乎是我正在寻找的,除了EditText仍然是可编辑的并因此接受来自硬件键盘按钮的输入,即使虚拟键盘被抑制。我想我可以通过过滤它的输入来解决这个问题。谢谢@Maurycy – andrrs 2012-02-02 14:37:12

1

在您的EditText中设置android:focusable = false。

+0

感谢您的建议,但focusable = false不幸的是不给我EditText – andrrs 2012-02-01 22:16:22

+0

Focusable中的任何光标主要用于像轨迹球和键盘在视图周围导航 – Maurycy 2012-02-02 10:28:02