如何在UI中保持按钮静态

时间:2013-03-29 06:21:53

标签: android android-layout android-ui

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

BEFORE

before choosing DR

AFTER

After choosing DR

2) 当我按下输入时在软键盘上,下一个编辑文本字段必须成为焦点。 (即)在K1和我按下输入时,焦点必须转移到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 个答案:

答案 0 :(得分: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/Close/hide the Android Soft Keyboard

答案 1 :(得分:2)

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

android:nextFocusDown。有关完整指南搜索"Focus Handling

部分

现在是下一部分,在最后一个编辑文本,即按钮之前,你需要软键盘上的“输入”按钮直接作为结果按钮。对于该集合onEditorActionListener并覆盖onEditorAction(TextView v,int actionId,KeyEvent事件)方法。检查actionId是否为actionSend并以编程方式单击“结果”按钮。

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

答案 2 :(得分: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" />

答案 3 :(得分:1)

无法查看下一个编辑文本字段的主要原因是因为每当出现软键盘时弹出结果按钮。使用

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

在类的onCreate()方法中。