[android] EditText imeOptions를 actionNext로 설정해도 효과가 없습니다.

상당히 복잡한 (실제로는) xml 레이아웃 파일이 있습니다. 뷰 중 하나 v1는 EditText ( v2) 및 다른 LinearLayout ( v3)의 두 자식이있는 LinearLayout ( )입니다. 자식 LinearLayout에는 차례로 EditText ( v4) 및 ImageView ( v5)가 있습니다.

EditText v2의 경우 imeOptions가 있습니다.

android:imeOptions="actionNext"

나는 응용 프로그램을 실행할 때, 키보드의은 return을 확인하지 않습니다 next와 나는 변경하려는 next. 이 문제를 어떻게 해결합니까?

또한 사용자가 다음을 클릭하면 EditText v4로 이동합니다. 내가할까요?

실제로 코드를 확인해야하는 사람들을 위해 :

<LinearLayout
        android:id="@+id/do_txt_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/col6"
        android:orientation="vertical"
        android:visibility="gone" >

        <EditText
            android:id="@+id/gm_title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:background="@drawable/coldo_text"
            android:hint="@string/enter_title"
            android:maxLines="1"
            android:imeOptions="actionNext"
            android:padding="5dp"
            android:textColor="pigc7"
            android:textSize="ads2" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:orientation="horizontal" >

            <EditText
                android:id="@+id/rev_text"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_gravity="center_vertical"
                android:layout_margin="5dp"
                android:layout_weight="1"
                android:background="@drawable/coldo_text"
                android:hint="@string/enter_msg"
                android:maxLines="2"
                android:padding="5dp"
                android:textColor="pigc7"
                android:textSize="ads2" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_gravity="center_vertical"
                android:background="@drawable/colbtn_r”
                android:clickable="true"
                android:onClick=“clickAct”
                android:paddingLeft="5dp"
                android:paddingRight="5dp"
                android:src="@drawable/abcat/>
        </LinearLayout>
    </LinearLayout>



답변

android:maxLines="1" & android:inputType="text"EditText에 추가 하기 만하면 됩니다. 작동합니다 !! 🙂


답변

singleLine더 이상 사용되지 않습니다. 입력 유형 (예 :)을 추가하는 android:inputType="text"것도 저에게 효과적이었습니다.

사용 android:maxLines="1"으로 singleLine사용되지 않습니다


답변

android:singleLine 더 이상 사용되지 않습니다. 결합하는 것이 좋습니다. android:maxLines="1"android:inputType="text" . 와 . 다음은 코드입니다.

<EditText
        android:id="@+id/editText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxLines="1"
        android:inputType="text"
        />


답변

여기에 제공된 답변은 모두 매우 유용했지만 여전히 키보드의 “Next”를 표시하기 위해 고군분투하고있었습니다.

android:digitsXML에서 Android의 속성 을 사용 하면 android:imeOptions="actionNext"예상대로 작동 하지 않는 것으로 나타났습니다 .

대답은 실제로 사용되지 않는 android:singleLine="True" 입니다. 이것은 IME 옵션이 존중되도록 강제하는 것 같습니다.

작동하지 않는 오래된 코드

        <android.support.design.widget.TextInputEditText
            android:id="@+id/first_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:digits="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ- "
            android:ellipsize="end"
            android:hint="@string/first_name"
            android:imeOptions="actionNext"
            android:inputType="textCapWords"
            android:maxLength="35"
            android:maxLines="1" />

작업 코드

        <android.support.design.widget.TextInputEditText
            android:id="@+id/first_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:digits="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ- "
            android:ellipsize="end"
            android:hint="@string/first_name"
            android:imeOptions="actionNext"
            android:inputType="textCapWords"
            android:maxLength="35"
            android:maxLines="1"
            android:singleLine="true" />

나는 deprecated 속성을 사용하는 것을 좋아하지 않지만 현재로서는 원하는 결과를 얻는 것 같습니다.


답변

한 줄이 더 이상 사용되지 않으므로 inputType이 필요하다고 생각하는 코드 아래에 추가하십시오.

        <EditText
            android:inputType="text"
            android:maxLines="1"
            android:imeOptions="actionNext" />


답변

마지막으로이 문제에 대한 확실한 해결책을 찾았 습니다. 편집 텍스트 에이 3 줄 을 추가하면 정상적으로 작동합니다.

        android:maxLines="1"
        android:inputType="text"
        android:imeOptions="actionDone"

여기에서 요구 사항에 따라 maxLines 를 추가 할 수 있습니다 . 지금은 더 이상 사용되지 않으므로 singleLine 을 사용 하지 마십시오 . 행운을 빕니다!


답변

android:inputType="text"

imeOptions가 작동하려면 inputType을 지정해야합니다.