Je veux Émettre un caractère EditText Comment atteindre ces EditText
Dois-je faire plusieurs EditText Ou il y a une autre façon
Je veux Émettre un caractère EditText Comment atteindre ces EditText
Dois-je faire plusieurs EditText Ou il y a une autre façon
Faire Multi-EditText est la méthode la plus simple pour y parvenir. S'il vous plaît prendre mon code comme référence. C'est un numéro-EditText. Et il passe la mise au point suivante editText après avoir entré un numéro précédent EditText XML:
<EditText
android:id="@+id/id1"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="@drawable/rounded_edittext"
android:focusableInTouchMode="true"
android:gravity="center"
android:inputType="number"
android:maxLength="1"
android:nextFocusForward="@+id/id2" />
<EditText
android:id="@+id/id2"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="@drawable/rounded_edittext"
android:gravity="center"
android:inputType="number"
android:maxLength="1"
android:nextFocusForward="@+id/id3" />
<EditText
android:id="@+id/id3"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="@drawable/rounded_edittext"
android:gravity="center"
android:inputType="number"
android:maxLength="1"
android:nextFocusForward="@+id/id4" />
<EditText
android:id="@+id/id4"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="@drawable/rounded_edittext"
android:gravity="center"
android:inputType="number"
android:maxLength="1" />
JavaClass
e1 = (EditText) rootView.findViewById(R.id.id1);
e2 = (EditText) rootView.findViewById(R.id.id2);
e3 = (EditText) rootView.findViewById(R.id.id3);
e4 = (EditText) rootView.findViewById(R.id.id4);
e1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int count) {
if (count == 1) {
e2.requestFocus();
}
}
});
e2.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int count) {
if (count == 1) {
e3.requestFocus();
}
}
});
e3.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int count) {
if (count == 1) {
e4.requestFocus();
}
}
});
bonne réponse et belle mise en œuvre – 3bdoelnaggar
La meilleure solution est facile à utiliser plusieurs – jonathanrz