我正在使用 Visual Studio 2019 开发一个 android 应用程序。我在很多帖子上搜索了很多关于这个问题的信息,但没有成功。
在连接屏幕中,用户必须使用管理员和密码登录:
这里是xml文件:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:minWidth="25px"
android:minHeight="25px">
<ImageView
android:layout_width="wrap_content"
android:layout_height="140dp"
android:layout_marginBottom="0dp"
android:src="@drawable/logo"
android:id="@+id/img_accueil" />
<EditText
style="@style/EditText_Connexion"
android:hint="@string/utilisateur"
android:background="@drawable/round_edit_text"
android:id="@+id/txt_utilisateur"
android:maxLines="1"
android:focusable="true"
android:focusableInTouchMode="true"/>
<EditText
style="@style/EditText_Connexion"
android:inputType="textPassword"
android:hint="Mot de passe"
android:background="@drawable/round_edit_text"
android:id="@+id/txt_mot_de_passe"
android:maxLines="1"
android:focusable="true"
android:focusableInTouchMode="true"/>
<Button
style="@style/Button_Orange"
android:text="@string/button_connexion"
android:id="@+id/button_connexion"/>
<Button
style="@style/Button_Orange"
android:text="Initialisation de la base"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnBddInit"
android:layout_marginTop="10dp"/>
<Button
style="@style/Button_Orange"
android:text="Quitter"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnQuitter"
android:layout_marginTop="10dp"/>
当用户在登录后按“ENTER”键时,焦点应该转到密码(mot de passe)EditText,而是转到“连接”按钮上:
private void Txt_utilisateur_KeyPress(object sender, Android.Views.View.KeyEventArgs e)
{
if (e.Event.Action == KeyEventActions.Down && e.KeyCode == Keycode.Enter)
{
btn_connexion.ClearFocus();
//txt_utilisateur.ClearFocus();
//txt_motDePasse.ClearFocus();
//btn_initBdd.ClearFocus();
//btn_Quitter.ClearFocus();
txt_motDePasse.RequestFocus();
e.Handled = true;
return;
}
else
{
e.Handled = false;
}
}
我尝试在请求焦点命令之后添加,但是没有用:
InputMethodManager im = (InputMethodManager)GetSystemService(Context.InputMethodService);
im.ShowSoftInput(tb_NumLot, ShowFlags.Implicit);
我找不到其他东西可以尝试,感谢您的帮助。