我试图将EditText或AppCompatEditText放在CardView中,但EditText无法获得焦点。找不到布局中缺少的内容。

        <android.support.v7.widget.CardView
            android:id="@+id/card_username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="14dp"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="14dp"
            app:cardBackgroundColor="@color/color_secondary_ultra_light">
            <android.support.v7.widget.AppCompatEditText
                android:id="@+id/edit_username"
                android:padding="10dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@null"
                android:drawablePadding="4dp"
                android:drawableTint="@android:color/darker_gray"
                android:drawableRight="@mipmap/ic_person_black_24dp"
                android:hint="Username"
                android:inputType="textWebEmailAddress"
                android:maxLines="1"
                android:textColorHint="@android:color/darker_gray"
                android:textSize="18sp"
                android:focusable="true"
                android:clickable="true"/>
        </android.support.v7.widget.CardView>

发布的解决方案在我的案例中不起作用。

最佳答案

不要使用appcompatedittext而是使用edittext
默认情况下,它将使用AppCompatEditText

<android.support.v7.widget.CardView
            android:id="@+id/card_username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="14dp"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="14dp"
            app:cardBackgroundColor="@color/color_secondary_ultra_light">
            <EditText
                android:id="@+id/edit_username"
                android:padding="10dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@null"
                android:drawablePadding="4dp"
                android:drawableTint="@android:color/darker_gray"
                android:drawableRight="@mipmap/ic_person_black_24dp"
                android:hint="Username"
                android:inputType="textWebEmailAddress"
                android:maxLines="1"
                android:textColorHint="@android:color/darker_gray"
                android:textSize="18sp"
                android:focusable="true"
                android:clickable="true"/>
        </android.support.v7.widget.CardView>

您可以签入默认情况下EditText使用它的AppCompatEditText文档。
在布局中使用EditText时,将自动使用此选项。
在编写自定义
意见。

10-07 20:54