键盘上方需要有上一个和下一个按钮

发布于 2024-12-13 19:00:41 字数 136 浏览 2 评论 0原文

我想在键盘上方显示带有“上一个”、“下一个”按钮的虚拟键盘。

当用户单击“上一个”按钮时,光标应移动到上一个编辑文本输入字段,单击“下一个”按钮应转到视图中的下一个编辑文本字段。

我想在我自己的活动中使用这些按钮。我该怎么做?

I want to show the virtual keyboard with Prev, Next Buttons above the keyboard.

When the user clicks prev button, cursor should move to the previous edit-text input field and clicking on next button should go to the next edit-text field in the view.

I want to use those buttons in my own activity. How can I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

月下伊人醉 2024-12-20 19:00:41

这可以通过将 android:windowSoftInputMode="adjustPan" 添加到 Activity 来实现
清单中的元素。例如,

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.codename.android"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" 
        android:label="@string/app_name"
        android:theme="@style/MyTheme"
        >

        <activity android:name=".MainActivity"
                  android:label="@string/app_name"
                  android:windowSoftInputMode="adjustPan">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-sdk android:minSdkVersion="7" />
</manifest> 

这可以防止显示虚拟键盘时调整视图大小。

This can be achieve by adding android:windowSoftInputMode="adjustPan" to activity
element within the manifest. E.g.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.codename.android"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" 
        android:label="@string/app_name"
        android:theme="@style/MyTheme"
        >

        <activity android:name=".MainActivity"
                  android:label="@string/app_name"
                  android:windowSoftInputMode="adjustPan">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-sdk android:minSdkVersion="7" />
</manifest> 

This prevents the view from resizing when the virtual keyboard is displayed.

久随 2024-12-20 19:00:41

您可以在布局中为 Edittext 设置适当的 IME 选项。

android:imeOptions="actionNext"

并完成

android:imeOptions="actionDone"

You can set proper IME option for the Edittext in the Layout.

android:imeOptions="actionNext"

and for done

android:imeOptions="actionDone"

初吻给了烟 2024-12-20 19:00:41
Android code to override the "Done" button in my EditText field:

myEditField.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            if (actionId == EditorInfo.IME_ACTION_DONE) {

               InputMethodManager imm =(InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
               imm.hideSoftInputFromWindow(getWindowToken(), 0);//hide the keyboard.

                return true;
            }
            return false;
        }
    });
Android code to override the "Done" button in my EditText field:

myEditField.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            if (actionId == EditorInfo.IME_ACTION_DONE) {

               InputMethodManager imm =(InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
               imm.hideSoftInputFromWindow(getWindowToken(), 0);//hide the keyboard.

                return true;
            }
            return false;
        }
    });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文