Android 如何实现这样的编辑

Android 如何实现这样的编辑,android,android-edittext,Android,Android Edittext,我想制作一个单字符的编辑文本 我是否必须制作多编辑文本,或者有其他方法制作多编辑文本是实现这一点的最简单方法。请参考我的代码。这是一个数字文本。在您为上一个editText输入数字后,它将焦点切换到下一个editText XML: 制作多编辑文本是实现这一点的最简单方法。请参考我的代码。这是一个数字文本。在您为上一个editText输入数字后,它将焦点切换到下一个editText XML: 最好且简单的解决方案是使用多个。最好且简单的解决方案是使用多个 <EditText

我想制作一个单字符的编辑文本


我是否必须制作多编辑文本,或者有其他方法

制作多编辑文本是实现这一点的最简单方法。请参考我的代码。这是一个数字文本。在您为上一个editText输入数字后,它将焦点切换到下一个editText XML:


制作多编辑文本是实现这一点的最简单方法。请参考我的代码。这是一个数字文本。在您为上一个editText输入数字后,它将焦点切换到下一个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" />
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();
                    }
                }
            });