android – 禁用EditText可编辑性和焦点(如TextView)

有没有办法使EditText行为像 Android中的TextView(XML是首选)?
我已经尝试过以下内容
android:editable="false"
 android:focusable="false"
 android:focusableInTouchMode="false"
 android:cursorVisible="false"
 android:longClickable="false"

这是有效的,但是我仍然可以触摸EditText来获取焦点(橙色的边缘),尽管焦点丢失了,一旦我删除我的手指.
我不知道focusableInTouchMode是做什么的,但是当我继续接触时它不会移除焦点.

而我不使用白色背景TextView的原因是TextView的背景是丑陋的. EditText的背景有圆角和阴影效果.

提前致谢.

解决方法

EditText和TextView非常相似.我将硬编码到 EditText.java中的唯一区别是将可编辑认设置为true,您可以手动设置.除此之外,EditText style是:
<style name="Widget.EditText">
    <item name="android:focusable">true</item>
    <item name="android:focusableInTouchMode">true</item>
    <item name="android:clickable">true</item>
    <item name="android:background">@android:drawable/edit_text</item>
    <item name="android:textAppearance">?android:attr/textAppearanceMediumInverse</item>
    <item name="android:textColor">@android:color/primary_text_light</item>
    <item name="android:gravity">center_vertical</item>
</style>

和TextView是:

<style name="Widget.TextView">
    <item name="android:textAppearance">?android:attr/textAppearanceSmall</item>
</style>

我的猜测是@android:drawable / edit_text是橙色框的源.的确,it contains

<item android:state_pressed="true" android:drawable="@drawable/textfield_pressed"/>

最简单的方法可能是将其背景设置为认值:

机器人:背景= “@机器人:可拉伸/ textfield_default”

相关文章

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