有没有办法使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”