1

1) 我有这个用户界面,当出现软键盘时,屏幕底部的按钮必须是静态的。即现在它来了

选择DR之前

选择DR后

2) 当我在软键盘上按下输入时,下一个编辑文本字段必须成为焦点。(即)在 K1 和我按 enter 时,焦点必须转移到 K2 并且必须可见。

编辑 这就是我获得编辑文本字段的方式

dr_e=(EditText)findViewById(R.id.dr_editText);
            InputMethodManager imm = (InputMethodManager)getSystemService(
                      Context.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(dr_e.getWindowToken(), 0);
            k1_e=(EditText)findViewById(R.id.k1_editText);
            k2_e=(EditText)findViewById(R.id.k2_editText);
            al_e=(EditText)findViewById(R.id.al_editText);
            alconst_e=(EditText)findViewById(R.id.al_const_editText);
4

4 回答 4

2

要为 EditText 显示软键盘:

EditText editText = (EditText) findViewById(R.id.myEdit);
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
// only will trigger it if no physical keyboard is open
mgr.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);

隐藏 EditText 的软键盘:

InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
mgr.hideSoftInputFromWindow(editText.getWindowToken(), 0);

看更多

参考这个链接:http ://www.androidpeople.com/android-hide-virtual-keyboard-through-code/ ,关闭/隐藏Android软键盘

于 2013-03-29T06:35:56.527 回答
2

为了定义哪个视图应该获得下一个焦点(比如下一个焦点到下面的视图)尝试下一个

android:nextFocusDown。有关完整指南,请搜索“焦点处理”部分

现在是下一部分,在最后一个编辑文本(即按钮之前的那个)处,您将希望软键盘上的“输入”按钮直接充当结果按钮。对于该设置onEditorActionListener并覆盖 onEditorAction(TextView v, int actionId, KeyEvent event) 方法。检查 actionId 是否为 actionSend 并以编程方式单击您的“结果”按钮。

为此,您的最后一个 edittext 应该具有属性 android:imeOptions="actionSend" 并以编程方式单击按钮使用 Button.performCLick()

于 2013-03-29T07:01:03.877 回答
1

你能在清单文件中检查一下吗

android:windowSoftInputMode="adjustUnspecified"; 

我会给你调整窗口大小和相关值。

更新:-

android:imeOptions="actionNext";

在你的xml中试试这个,你的第一个edittext在哪里。像这样

 <EditText
    android:id="@+id/et"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:singleLine="true"
    android:imeOptions="actionNext" />
于 2013-03-29T06:40:35.363 回答
1

下一个编辑文本字段聚焦,无法查看的主要原因是每次出现软键盘时都会弹出结果按钮。到那个用途

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

在类的 onCreate() 方法中。

于 2013-03-29T08:17:51.117 回答