1

有没有人知道如何解决索尼平板电脑 S 上一个非常烦人的问题。

我有一个垂直的 ScrollView 和一个带有很多 TextViews 和一些 EditTexts 的线性布局。当我向下滚动屏幕并看到 EditText 时,设备决定赋予 EditText 焦点并弹出键盘。

这不会发生在其他设备上,例如 Asus Transformer Prime、HTC One X、Samsung Galaxy Tab 和 HP TouchPad (cyanogenmod)。

我做过的事情。

  • Windows 软输入模式在活动的清单中设置为“stateHidden”。
  • 堆栈顶部有一个 LinearLayout,它的可聚焦和可聚焦触摸设置为 true。
  • 该代码还将将此布局重点放在创建上。

这绝对似乎是索尼平板电脑特有的问题!

其他人有这个问题和解决方案吗?

谢谢

4

3 回答 3

2

我刚刚安装了 ICS 更新。现在问题已经消失了!

于 2012-05-31T14:56:39.567 回答
2

在 EditText 上添加一个 eventListener,当它获得焦点然后隐藏键盘

通过使用这个:

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

要获得焦点增益事件,请使用此功能

imageView.setOnFocusChangeListener(
    new OnFocusChangeListener() {
        public void onFocusChange(View arg0, boolean arg1) {
            // hide the keyboard using above code
            InputMethodManager mgr = (InputMethodManager) getSystemService(
                Context.INPUT_METHOD_SERVICE);
            mgr.hideSoftInputFromWindow(editText.getWindowToken(), 0);
        }
    });

希望它会有所帮助。

于 2012-05-23T14:31:05.520 回答
0

尝试在视图上发布可运行文件。

editText.post(new Runnable() {
   @Override
   public void run() {
      InputMethodManager mgr = (InputMethodManager) getSystemService(
            Context.INPUT_METHOD_SERVICE);
        mgr.hideSoftInputFromWindow(editText.getWindowToken(), 0);
   }
});
于 2015-10-07T18:51:02.447 回答