当前位置: 首页 > 知识库问答 >
问题:

为什么Android软键盘没有响应EditText?

姬雪松
2023-03-14

我有一个SherlockFragmentActivity和一个位于TabManager中的Sherlock Fragment。在这个片段中,我在LinearLayout中有单选按钮、复选框、按钮和编辑文本。按下编辑文本时,键盘有时不响应。

在2.1 AVD中,键盘响应不一致,在4.0 AVD中,键盘根本没有响应,而在设备上,键盘响应不一致。有时按下其他对象会激活显示键盘的功能。

以下是编辑文本的XML:

    <EditText       android:id="@+id/EditText1"
                    android:layout_width="100dp"
                    android:layout_height="wrap_content"
                    android:inputType="number"
                    android:text="20" >

我对不一致的活动感到困惑,而不是它在4.0 AVD上不起作用。任何关于为什么会发生这种情况的建议,或者一种显示键盘的方式,都是非常好的。

共有1个答案

习旻
2023-03-14

您可以为您的edittext注册一个焦点侦听器,并在它获得焦点时打开软键盘:

edit_Text.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
    if(hasFocus){
        ((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.showSoftInput(edit_Text, InputMethodManager.SHOW_FORCED);
    }else
        Toast.makeText(getApplicationContext(), "lost the focus", 2000).show();
}
});

查看:<br>事件,用于处理编辑文本的焦点<br>强制打开软键盘

 类似资料:
  • 键盘移动 只需再做一点微小的工作,你就可以建立一个通过鼠标控制精灵移动的简单系统。为了简化你的代码,我建议你用一个名为keyboard的自定义函数来监听和捕捉键盘事件。 function keyboard(keyCode) { let key = {}; key.code = keyCode; key.isDown = false; key.isUp = true; key.p

  • 我有一个AutoCompleteTextView,它像往常一样在用户键入3个字母后提供建议。一旦我触摸建议列表,我想隐藏软键盘一次。我在下面用表格布局所做的只是在单击除建议列表之外的任何地方时隐藏键盘。 可扩展置标语言 爪哇岛 用于自定义列表的 XML

  • 问题内容: 我遵循了这里的各种问题和答案来设置我的Android活动以覆盖,以便在软键盘打开和关闭时执行逻辑。这是我的代码的相关摘录。我将其归结为最简单的情况: AndroidManifest.xml SearchActivity.java 当我更改方向时,上面的代码将显示Toast,但在软键盘打开或关闭时,则无任何作用。我已经测试过通过EditText聚焦打开软键盘,并通过长按菜单按钮手动打开它

  • 此angularJS文件不将表达式的值显示为“全名:John Doe”;相反,它显示“全名:{{firstName”“lastName}”。我可能错过了什么? AngularJS文件结束 下面是它的外部javaScript文件:personController。js

  • 我正在使用下面的活动布局。 和下面的片段布局。 片段被加载到活动布局的“fragment_container”节点中。 我的问题是片段中的“commentbox”字段。当你点击它时,虚拟键盘会出现在碎片内容的下半部分上方,而不是将内容向上推。因此在键入时无法看到文本字段。 我几天来一直在搜索和尝试推荐,比如使用“Android:Windowsoftinputmode=AdjustPan”或某个变种

  • 见下面的图片。当我点击编辑文本时,我的整个布局被推到顶部。结果应该是工具栏 图像 1 图片2 我的布局如下所示: 这是我的清单。xml文件: 我尝试过已经尝试过“调整大小”,但问题是我在底部的线性布局隐藏在键盘下。 那么我该怎么做呢?