Android:如何阻止我的编辑文本转到下一个?

Android:如何阻止我的编辑文本转到下一个?,android,Android,所以我有一个登录表。当我按下后退按钮或回车按钮时,它似乎进入下一个编辑文本(或上一个),即使我为编辑文本设置了以下选项 奇怪的是,一旦我循环浏览了所有内容,一切都会正常工作,即后退按钮/完成按钮关闭编辑文本和键盘 请注意,我只显示了1个编辑文本字段,以避免文章被淹没。其余的都差不多 <android.support.design.widget.TextInputLayout android:layout_width="match_parent"

所以我有一个登录表。当我按下后退按钮或回车按钮时,它似乎进入下一个编辑文本(或上一个),即使我为编辑文本设置了以下选项

奇怪的是,一旦我循环浏览了所有内容,一切都会正常工作,即后退按钮/完成按钮关闭编辑文本和键盘

请注意,我只显示了1个编辑文本字段,以避免文章被淹没。其余的都差不多

  <android.support.design.widget.TextInputLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1">

                    <com.test.views.widgets.myEditText
                        android:id="@+id/userFirstName"
                        android:imeOptions="actionDone"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:hint="@string/generic.first.name"
                        android:inputType="textPersonName"
                        android:textColor="@android:color/white"
                        android:theme="@style/EditText.Base.Style"
                        app:font="regular" />
                </android.support.design.widget.TextInputLayout>
当按下后退按钮时

 @Override
    public boolean onKeyPreIme(int keyCode, KeyEvent event) {
        if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {
            clearFocus();
        }
        return false;
    }
还请注意,我遵循本教程是为了在焦点改变时隐藏键盘


尝试将
android:imeOptions=“actionDone”
添加到您的
EditText


尝试将
android:imeOptions=“actionDone”
添加到您的
EditText


尝试将
android:imeOptions=“actionDone”
添加到您的
EditText


尝试将
android:imeOptions=“actionDone”
添加到您的
EditText


添加android:imeOptions=“actionDone”。它将关闭键盘,而不是进入下一个聚焦视图。

添加android:imeOptions=“actionDone”。它将关闭键盘,而不是进入下一个聚焦视图。

添加android:imeOptions=“actionDone”。它将关闭键盘,而不是进入下一个聚焦视图。

添加android:imeOptions=“actionDone”。它将关闭键盘,而不是进入下一个可聚焦视图。

我想问题出在您的
clearFocus()
中。文件:

注意:当视图清除焦点时,框架将尝试提供焦点 从顶部到第一个可聚焦视图。因此,如果该视图是 首先从顶部开始,可以集中精力,然后是与 将调用ClearingFocus,然后框架将给出 关注这个观点

尝试将
clearFocus()
替换为
hideKeyboard()
如下

void hideKeyboard()    {
((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(yourView.getWindowToken(), 0);
}

我想问题出在您的
clearFocus()
中。文件:

注意:当视图清除焦点时,框架将尝试提供焦点 从顶部到第一个可聚焦视图。因此,如果该视图是 首先从顶部开始,可以集中精力,然后是与 将调用ClearingFocus,然后框架将给出 关注这个观点

尝试将
clearFocus()
替换为
hideKeyboard()
如下

void hideKeyboard()    {
((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(yourView.getWindowToken(), 0);
}

我想问题出在您的
clearFocus()
中。文件:

注意:当视图清除焦点时,框架将尝试提供焦点 从顶部到第一个可聚焦视图。因此,如果该视图是 首先从顶部开始,可以集中精力,然后是与 将调用ClearingFocus,然后框架将给出 关注这个观点

尝试将
clearFocus()
替换为
hideKeyboard()
如下

void hideKeyboard()    {
((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(yourView.getWindowToken(), 0);
}

我想问题出在您的
clearFocus()
中。文件:

注意:当视图清除焦点时,框架将尝试提供焦点 从顶部到第一个可聚焦视图。因此,如果该视图是 首先从顶部开始,可以集中精力,然后是与 将调用ClearingFocus,然后框架将给出 关注这个观点

尝试将
clearFocus()
替换为
hideKeyboard()
如下

void hideKeyboard()    {
((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(yourView.getWindowToken(), 0);
}

我设法解决了这个问题

我将其添加到我的根布局(其中包含编辑文本)中,问题似乎不再存在

android:focusableInTouchMode="true"

我设法解决了这个问题

我将其添加到我的根布局(其中包含编辑文本)中,问题似乎不再存在

android:focusableInTouchMode="true"

我设法解决了这个问题

我将其添加到我的根布局(其中包含编辑文本)中,问题似乎不再存在

android:focusableInTouchMode="true"

我设法解决了这个问题

我将其添加到我的根布局(其中包含编辑文本)中,问题似乎不再存在

android:focusableInTouchMode="true"

将其添加到EditText属性

 android:maxLines="1"

将其添加到EditText属性

 android:maxLines="1"

将其添加到EditText属性

 android:maxLines="1"

将其添加到EditText属性

 android:maxLines="1"
尝试使用“android:singleLine=true”尝试使用“android:singleLine=true”尝试使用“android:singleLine=true”尝试使用“android:singleLine=true”