【发布时间】:2021-03-23 14:58:37
【问题描述】:
为什么此代码在 Xamarin.Android 上不起作用?如果输入密码字段,它会更改按钮的enable 属性。
EditText edit_user_001 = FindViewById<EditText>(Resource.Id.id_edit_user_001);
EditText edit_password_001 = FindViewById<EditText>(Resource.Id.id_edit_password_001);
Button btn_login_001 = FindViewById<Button>(Resource.Id.id_btn_login_001);
edit_password_001.KeyPress += (sender, e) => {
if (edit_user_001.Text.ToString().Equals("") | edit_password_001.Text.ToString().Equals("")){
btn_login_001.Enabled = false;
} else {
btn_login_001.Enabled = true;
}
};
这是.xml:
<TextView
android:id="@+id/id_txt_user_001"
android:text="@string/txt_user_001"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<EditText
android:id="@+id/id_edit_user_001"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10.0dp"
android:inputType="text"/>
<TextView
android:text="@string/txt_password_001"
android:id="@+id/id_txt_password_001"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<EditText
android:id="@+id/id_edit_password_001"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10.0dp"
android:inputType="textPassword"/>
android:inputType="textPassword 造成冲突。如果我更改为android:inputType="text,它工作正常。是否有替代方案或解决方案?
【问题讨论】:
-
“造成冲突”——这到底是什么意思?您是否收到错误或异常?具体是什么问题?
-
这是一个错误。我无法使用我的键盘(在模拟器中)在输入中输入文本。另外,如果我使用模拟器的虚拟键盘,
edit_password_001.Text.ToString().Equals("")总是TRUE
标签: c# android xamarin android-edittext