我有一个活动,里面有一些EditTexts。当我点击一个EditText来改变其中的文本时,在出现光标的地方会出现一个蓝色的箭头。我怎样才能阻止这个出现?Android,我该如何停止出现在EditText下方的指针
4
A
回答
1
我敢肯定,这是只发生在特定的API或设备。它可能在其他应用程序上也有不同的工作。最终,我没有看到任何真正的方法来禁用设备本地的东西。另外,那里的设备非常庞大,所以即使你找到了方法,你也很难禁用它。
2
该指针是一个系统助手,允许用户轻松地移动光标(更准确地说,不仅仅是触摸EditText)。所以我不知道你是否可以删除它,但我相信这不是一个好主意。
此外,这是一种指针,将根据设备不同的风格。如果你看看SDK的android源代码,你会发现一些叫做text_select_handle_XXX.png的drawable我想你会发现如何在你自己的主题中改变系统风格。
8
正如MarvinLabs指出的那样,这是Android SDK中的一组可绘制对象。他们可以被覆盖。
查找您的SDK平台这些图片:
- text_select_handle_left.png
- text_select_handle_middle.png
- text_select_handle_right.png
在将其复制到您的可绘制文件夹,所以你有一个本地副本参考。您可以更改这些颜色,使其变为空白或任何您想要的。请注意,正如MarvinLabs所说,将它们完全删除可能并不明智,因为它们可帮助用户选择要剪切和复制的文本。
如果您尚未在styles.xml中定义自定义主题,请定义一个。然后将这些项目添加到它:
_
<style name="CustomTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:textSelectHandleLeft">@drawable/text_select_handle_left</item>
<item name="android:textSelectHandleRight">@drawable/text_select_handle_right</item>
<item name="android:textSelectHandle">@drawable/text_select_handle_middle</item>
</style>
BEFORE:
AFTER:
(不同EditTexts但你的想法)
0
您可以用自定义编程EditText
做到这一点。您需要创建一个自定义的MovementMethod
实现,其中一个canSelectArbitrarily()
返回false。然后你只需覆盖EditText.getDefaultMovementMethod()
来回报您的CustomMovementMethod
:
public class MyEditText extends EditText {
private CustomMovementMethod customMovementMethod = new CustomMovementMethod();
@Override
public MovementMethod getDefaultMovementMethod() {
return customMovementMethod;
}
}
private class CustomMovementMethod implements MovementMethod {
@Override
public boolean canSelectArbitrarily() {
return false;
}
@Override
public void initialize(TextView widget, Spannable text) {
// TODO Auto-generated method stub
}
@Override
public boolean onGenericMotionEvent(TextView widget, Spannable text, MotionEvent event) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onKeyDown(TextView widget, Spannable text, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onKeyOther(TextView view, Spannable text, KeyEvent event) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onKeyUp(TextView widget, Spannable text, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onTakeFocus(TextView widget, Spannable text, int direction) {
// TODO Auto-generated method stub
}
@Override
public boolean onTouchEvent(TextView widget, Spannable text, MotionEvent event) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onTrackballEvent(TextView widget, Spannable text, MotionEvent event) {
// TODO Auto-generated method stub
return false;
}
}
相关问题
- 1. 如何停止软键盘默认情况下出现在Android
- 2. Android:停止EditText从超出预算
- 3. 我该如何停止requestAnimationFrame
- 4. Android EditText空指针异常
- 5. 在Android的EditText停止字符渲染
- 6. 如何停止mapbox-gl.js跟踪我的手机指南针
- 7. 我的方法应该在哪一点停止抛出异常?
- 8. 如何停止出现在列表项上的下拉列表
- 9. 指南针停止更新
- 10. 在阅读下一行之前,我该如何停止?
- 11. 当我运行exe文件(python 3,gui)时,我该如何停止cmd出现
- 12. 空指针异常的EditText - Android电子
- 13. Android - 如何让键盘出现EditText
- 14. 如何停止企业指南中出现的表?
- 15. 如果浏览器停止,我该如何停止这个JSP?
- 16. 如何在Android中停止方向
- 17. 如何检测用户是否停止在EditText中输入android
- 18. 如何停止在Android的
- 19. 我该如何缓慢停止CCActions?
- 20. 我该如何停止cassandra数据库?
- 21. 我该如何停止拖动滑块
- 22. EditText getText抛出空指针异常
- 23. Titanium JS:如何停止从键盘下方出现的生成列表视图
- 24. 获取EditText值时出现空指针异常
- 25. jquery我该如何停止select元素掉下来?
- 26. Android停止下载
- 27. 如何获得该指针指针指向的值的地址
- 28. Angular指令呈现HTML标记,我该如何阻止它?
- 29. 为什么我在我的Android代码中出现空指针错误?
- 30. 在Mediaplayer中为暂停方法的空指针异常android
什么http://stackoverflow.com/questions/5582702/disable-edittext-blinking-cursor –