我有一个非常奇怪的问题,在我测试应用程序的每个设备上,edittext的行为与您期望的一样,文本突出显示,并且在白色背景上为黑色。
特别是在联想瑜伽平板电脑上,当编辑文本聚焦时,文本将变为黑色并与背景融为一体。
这个布局是:
<RelativeLayout
android:id="@+id/ip_layout"
android:layout_below="@id/display_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip">
<LinearLayout
android:layout_marginBottom="10dip"
android:background="#8A8A8A"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="1dp"
android:layout_width="match_parent" />
<EditText
android:layout_marginTop="10dip"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="false"
android:hint="@string/Hostname"
android:singleLine="true"
android:imeOptions="actionNext"
android:background="@android:color/transparent"
android:id="@+id/host_address"
android:maxLength="50" />
</RelativeLayout>
答案 0 :(得分:1)
您必须创建自己的九个补丁图像,并将其用作EditText的背景,否则编辑文本将使用设备和版本的android。
如果你想为edittext背景创建更多效果,如按下,聚焦和默认状态,那么你需要为edittext的背景图像创建一个选择器:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@android:drawable/Epressed"/>
<item
android:state_focused="true"
android:drawable="@drawable/Efocused"/>
<item
android:drawable="@android:drawable/Edefault"/>
</selector>
答案 1 :(得分:1)
如果在特定设备上出现问题,可能是由于设备自定义主题。最近的Android设备需要支持Holo主题,您可以使用以下命令在清单中明确询问该主题:
<style name="AppTheme" parent="android:Theme.Holo" />