有人知道如何禁用EditText视图中的闪烁光标吗?
当前回答
将游标可见性设置为true和false的问题可能是一个问题,因为它会删除游标,直到您再次设置它,同时字段是可编辑的,这不是很好的用户体验。
所以不用
setCursorVisible(false)
就像这样做
editText2.setFocusableInTouchMode(false)
editText2.clearFocus()
editText2.setFocusableInTouchMode(true)
上面的代码删除焦点,进而删除游标。并再次启用它,这样你就可以再次触摸它并编辑它。就像普通的用户体验一样。
其他回答
rootLayout.findFocus .clearFocus (());
您可以使用以下代码以编程方式启用和禁用编辑文本游标。
启用游标
editText.requestFocus();
editText.setCursorVisible(true);
禁用游标
editText.setCursorVisible(false);
使用XML启用禁用游标
android:cursorVisible="false/true"
android:focusable="false/true"
使edit_text可选(复制/剪切/粘贴/选择/全选)
editText.setTextIsSelectable(true);
要专注于触摸模式,请在XML中编写以下代码行
android:focusableInTouchMode="true"
android:clickable="true"
android:focusable="true"
以编程方式
editText.requestFocusFromTouch();
清除触摸模式的焦点
editText.clearFocus()
将游标可见性设置为true和false的问题可能是一个问题,因为它会删除游标,直到您再次设置它,同时字段是可编辑的,这不是很好的用户体验。
所以不用
setCursorVisible(false)
就像这样做
editText2.setFocusableInTouchMode(false)
editText2.clearFocus()
editText2.setFocusableInTouchMode(true)
上面的代码删除焦点,进而删除游标。并再次启用它,这样你就可以再次触摸它并编辑它。就像普通的用户体验一样。
改变焦点到另一个视图(例如:任何textview或XML中的线性布局)使用 android: focusableInTouchMode = " true " android: focusable = " true " 在Activity中设置addTextChangedListener为edittext。 然后在aftertextchanged of Edittext上放置Edittext . clearfocus ();
这将在键盘打开时启用光标,在键盘关闭时禁用光标。
你可以使用xml属性android:cursorVisible="false"或通过编程方式:
java: view.setCursorVisible(假) 芬兰湾的科特林:视图。isCursorVisible = false
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- 如何在TextView中添加一个子弹符号?
- PreferenceManager getDefaultSharedPreferences在Android Q中已弃用
- 在Android Studio中创建aar文件