在提交失败后,EditText丢失了边框

时间:2011-11-21 08:57:15

标签: android android-edittext

我构建了一个如下所示的屏幕:

但是如果登录失败,屏幕看起来像这样:

我使用了EditText,代码如下:

<TextView android:layout_height="wrap_content"  
            android:layout_width="wrap_content"  
            android:text="email"></TextView>  
        <EditText 
            android:layout_height="wrap_content"  
            android:layout_width="fill_parent" 
            android:id="@+id/username"
            android:hint=""
            android:textStyle="normal"
    android:singleLine="true" 
            android:inputType="textEmailAddress">                
        </EditText>  
        <TextView android:layout_height="wrap_content"  
            android:layout_width="wrap_content"  
            android:text="password">
        </TextView>  
        <EditText 
            android:layout_height="wrap_content"  
            android:layout_width="fill_parent"
            android:id="@+id/uc_txt_password" 
            android:hint=""
            android:textStyle="normal"
    android:singleLine="true"
            android:inputType="textPassword">
        </EditText>  

有什么想法吗?

更新 似乎伪造的显示器是默认显示在冰淇淋三明治上的方式。我正在使用旧版本的android(2.2),其显示器看起来像第一张附加照片。

2 个答案:

答案 0 :(得分:2)

ICS推出更加“开放”的文本布局(查看gmail应用程序),其中编辑文本的默认样式缺少边框。如果您不希望它看起来像设备如何设置它,您应该更严格地定义您的样式,使其成为所有设备上的样式。也许使用一些9个补丁图像和状态选择器xml文件。因此,如果您将背景设置为白色并且未定义任何其他样式,则可能会从Holo.Dark继承并将其用作编辑文本bg:https://github.com/android/platform_frameworks_base/blob/master/core/res/res/drawable-hdpi/textfield_default_holo_dark.9.png

因此,没有可见的文字。更严格地定义你的风格,或者更好地设置主题,不要覆盖其他背景。

答案 1 :(得分:0)

尝试使用android选择器

 <?xml version="1.0" encoding="utf-8"?>

 <selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/editbox_dropdown_background"  android:state_focused="false"/>
  <item android:drawable="@drawable/editbox_background_focus_yellow"  android:state_focused="true"/>
  />
</selector>