EditText在将ImageView设置为EditView的背景时以及将EditView放在ImageView上时不显示输入的文本?

时间:2013-05-22 04:45:37

标签: android

当我使用EditText ImageView属性将android:layout_alignTop放在EditText上时,如下所示: -

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

    <ImageView
        android:id="@+id/first_meddle_baar"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:contentDescription="@string/image_view"
        android:src="@drawable/top_meddle_baar" />

    <ImageView
        android:id="@+id/search_baar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:contentDescription="@string/image_view"
        android:src="@drawable/search_baar" />

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignTop="@id/search_baar"    // #1
        android:layout_margin="3dip"
        android:hint="@string/search"
        android:paddingLeft="30dip" />

或者如果我将EditText放置在TextView上,其背景我设置为图像,如下面的代码所示: -

 <TextView
        android:id="@+id/first_enter_code"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/first_center_back"
        android:layout_margin="12dp"
        android:gravity="center_vertical"
        android:paddingLeft="10dp"
        android:background="@drawable/enter_code_new"
        android:text="@string/enter_client_code"
        android:textColor="#000000"
        android:textSize="18sp"
        android:textStyle="bold" />
    <EditText
        android:layout_width="70dp"
        android:layout_height="35dp"
        android:layout_alignTop="@id/first_enter_code"    //#2
        android:layout_marginLeft="210dip"
        android:padding="15dp" />

在这两种情况下,输入EditText的文字都没有显示出来?为什么?

1 个答案:

答案 0 :(得分:1)

首先,您将背景图像提供给任何文本框,您无需在图像视图中单独拍摄。这将解决您显示edittext的问题。

就像:

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignTop="@id/search_baar"    
    android:layout_margin="3dip"
    android:background="@drawable/txt_view_bg"
    android:paddingLeft="30dip" />