【发布时间】:2020-06-23 22:08:59
【问题描述】:
在我的 Android 应用程序中,我想要一个带有 android:editable="false" 的 EditText,但光标在闪烁。将“editable”设置为false后,光标闪烁似乎不起作用。
我只想使用我自己的键盘小部件(不是系统的软键盘),并保持光标闪烁。
有什么想法可以让这成为可能吗?
【问题讨论】:
-
我最初使用
android:inputType="none"发布了一个答案。不过,现在想到这个,我觉得不太可能。对于开发人员来说,让这样的事情成为可能并没有多大意义。我建议您使用自己的触摸侦听器创建一个自定义TextView类。 -
您有什么问题可以通过为 EditText 设置
TextWatcher来解决这个问题?? -
谢谢@Eric,我查了TextView.shouldblink() & TextView.onDraw(4.0.3)的源码,光标闪烁的条件是"mMovement != null && (isFocused( ) || isPressed())”和isCursorVisible(),真的需要自定义TextView吗?或者我们可以有一个简单的方法?
-
我真的不确定有什么简单的方法。从 Google 的角度来看,如果用户无法通过某些键盘进行交互,那么让光标闪烁是没有任何意义的。我唯一一次看到这样的自定义键盘是在游戏 Spirit 中,它使用了某种自定义
EditText。