2012-03-30 87 views
0

我有自定义的DialogPreference和自己定义的布局。布局文件如下:Android - 自定义DialogPreference中的奇怪布局显示

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:orientation="vertical" 

android:paddingTop="5dp" 
android:paddingLeft="10dp" 
android:paddingRight="10dp" > 

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/enter_password_label" 
    android:textAppearance="?android:attr/textAppearanceLarge" /> 

<EditText 
    android:id="@+id/editText1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:inputType="textPassword"> 

    <requestFocus /> 
</EditText> 

<TextView 
    android:id="@+id/textView2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/confirm_password_label" 
    android:textAppearance="?android:attr/textAppearanceMedium" 
    /> 

<EditText 
    android:id="@+id/editText2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:inputType="textPassword" 
    /> 

在弹出的对话框都TextViews缺失:

enter image description here

什么是不显示TextViews的原因是什么?

+0

你有没有试图改变文本的颜色 – Bhavin 2012-03-30 12:47:46

回答

0

此行为的原因之一是由于制造商对主题的自定义。其他原因可能是所选文字外观与背景颜色相同。为了避免这种情况,你可能只是一个颜色设为您的TextView,对于如:

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/enter_password_label" 
    android:textAppearance="?android:attr/textAppearanceLarge" 

    android:textColor="#000000" /> 

* 还要确保android:text确实有文字显示在屏幕上