Kotlin 无法点击空的 EditText
Kotlin can't click on empty EditText
我正在创建一个配置文件 activity,每行的一侧包含一个文本视图,用于获取有关该行的信息,例如:名称,在另一侧,我有一个 EditText 可以在我们单击时更改信息在验证。这是每行的 xml :
<FrameLayout
android:id="@+id/first_name_row"
android:layout_marginBottom="@dimen/profile_row_bottom_margin"
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:foreground="?android:attr/selectableItemBackground">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/small_item_list_height"
android:paddingEnd="@dimen/default_padding"
android:paddingLeft="@dimen/default_padding"
android:paddingRight="@dimen/default_padding"
android:paddingStart="@dimen/default_padding">
<TextView
android:includeFontPadding="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/default_padding"
android:layout_marginRight="@dimen/default_padding"
android:text="@string/acct_first_name"
android:textSize="@dimen/profile_row_text_size" />
<EditText
android:id="@+id/acc_name_first"
android:includeFontPadding="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/default_padding"
android:layout_marginRight="@dimen/default_padding"
android:background="@null"
android:text="@string/acct_first_name"
android:enabled="false"
android:focusable="false"
android:cursorVisible="false"
android:textSize="@dimen/profile_row_text_size" />
</RelativeLayout>
</FrameLayout>
问题是我添加了 android:background="@null"
是因为我不想要字段下方的栏。但是当我这样做时,我从该字段中删除了所有字符,它变成了空的,如果我更改为关注另一个字段,我无法点击空白字段。
这里有图片,Nom 字段是 select 编辑的,但我们看到字段前名是空的,所以我不能 select 它。也,外地电子邮件工作,因为我没有放 backgound = null
但我不想要它下面的栏。
有没有办法让 Textedit 在它下面没有栏但仍然可以点击它是空的?
EditText 有 android:layout_width="wrap_content" 一旦你删除所有字符变为零,下次即使你启用它也不能点击它。使用属性 android:minEms="1".
从我的角度来看,为您的编辑文本添加一些最小宽度会更好:
<EditText
android:id="@+id/acc_name_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/default_padding"
android:layout_marginRight="@dimen/default_padding"
android:background="@null"
android:cursorVisible="false"
android:enabled="false"
android:focusable="false"
android:includeFontPadding="false"
android:minWidth="50dp"
android:text="@string/acct_first_name"
android:textSize="@dimen/profile_row_text_size" />
我正在创建一个配置文件 activity,每行的一侧包含一个文本视图,用于获取有关该行的信息,例如:名称,在另一侧,我有一个 EditText 可以在我们单击时更改信息在验证。这是每行的 xml :
<FrameLayout
android:id="@+id/first_name_row"
android:layout_marginBottom="@dimen/profile_row_bottom_margin"
android:background="@color/white"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:foreground="?android:attr/selectableItemBackground">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="@dimen/small_item_list_height"
android:paddingEnd="@dimen/default_padding"
android:paddingLeft="@dimen/default_padding"
android:paddingRight="@dimen/default_padding"
android:paddingStart="@dimen/default_padding">
<TextView
android:includeFontPadding="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/default_padding"
android:layout_marginRight="@dimen/default_padding"
android:text="@string/acct_first_name"
android:textSize="@dimen/profile_row_text_size" />
<EditText
android:id="@+id/acc_name_first"
android:includeFontPadding="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/default_padding"
android:layout_marginRight="@dimen/default_padding"
android:background="@null"
android:text="@string/acct_first_name"
android:enabled="false"
android:focusable="false"
android:cursorVisible="false"
android:textSize="@dimen/profile_row_text_size" />
</RelativeLayout>
</FrameLayout>
问题是我添加了 android:background="@null"
是因为我不想要字段下方的栏。但是当我这样做时,我从该字段中删除了所有字符,它变成了空的,如果我更改为关注另一个字段,我无法点击空白字段。
这里有图片,Nom 字段是 select 编辑的,但我们看到字段前名是空的,所以我不能 select 它。也,外地电子邮件工作,因为我没有放 backgound = null
但我不想要它下面的栏。
有没有办法让 Textedit 在它下面没有栏但仍然可以点击它是空的?
EditText 有 android:layout_width="wrap_content" 一旦你删除所有字符变为零,下次即使你启用它也不能点击它。使用属性 android:minEms="1".
从我的角度来看,为您的编辑文本添加一些最小宽度会更好:
<EditText
android:id="@+id/acc_name_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/default_padding"
android:layout_marginRight="@dimen/default_padding"
android:background="@null"
android:cursorVisible="false"
android:enabled="false"
android:focusable="false"
android:includeFontPadding="false"
android:minWidth="50dp"
android:text="@string/acct_first_name"
android:textSize="@dimen/profile_row_text_size" />