次のような形式の EditText フィールドを作成したいと思います: 0000 AA.
最初の 4 つの数字で数字キーボードを表示し、自動的にスペースを作成してから通常のキーボードを表示することはできますか?
どうすればC#でそれを行うことができますか?
誰かアイデア?
これでうまくいくはずです:
EditText zipcode = FindViewById<EditText>(Resource.Id.zipcode);
zipcode.InputType = Android.Text.InputTypes.ClassNumber;
bool numberMode = true;
zipcode.TextChanged += (object sender, Android.Text.TextChangedEventArgs e) => {
if(zipcode.Text.Length == 4){
if(numberMode){
numberMode = false;
zipcode.Text = zipcode.Text + " ";
zipcode.SetSelection(zipcode.Text.Length);
}
}
if(zipcode.Text.Length > 4){
numberMode = false;
zipcode.InputType = Android.Text.InputTypes.ClassText;
}
if(zipcode.Text.Length <= 4){
numberMode = true;
zipcode.InputType = Android.Text.InputTypes.ClassNumber;
}
};