-1

在我的应用程序中,我正在使用选项卡活动和活动组。在其中一项活动中,我编辑了文本。当用户点击编辑文本时,出现软键盘。但是当用户单击后退按钮时,软键盘会消失,并且会出现活动堆栈上的前一个活动。

早些时候在其他应用程序上,当我在屏幕上有软键盘时按下后退按钮时,只有软键盘关闭,除非我再次按下后退按钮,否则它不会回到以前的活动。我希望这也发生在我当前的应用程序中。请帮助。

4

5 回答 5

1

在您的 On create 方法中使用以下内容。它工作正常。

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
于 2013-03-22T11:32:09.167 回答
1

可以试试这个-**

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
                                  imm.hideSoftInputFromWindow(v.getWindowToken(), 0);

**

于 2013-03-22T11:48:05.677 回答
1
 InputMethodManager imm = (InputMethodManager) 
              this.getSystemService(Context.INPUT_METHOD_SERVICE);

        if (imm.isAcceptingText()) {

            System.out.println("Software Keyboard was shown");

        } else {

             System.out.println("Software Keyboard is hidden");

             }  

这可以解决问题。我检查了软键盘板是否打开它停留在当前活动,否则它转到以前的活动。

于 2013-03-23T06:53:23.587 回答
0

代码

InputMethodManager imm = (InputMethodManager)getSystemService(
  Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);

也检查下面的链接: -

http://developer.android.com/guide/topics/resources/runtime-changes.html#HandlingTheChange

http://developer.android.com/reference/android/view/inputmethod/InputMethodManager.html

于 2013-03-22T11:38:08.310 回答
0

I think this will help you

protected void hideSoftKeyboard(EditText input) {
        input.setInputType(0);
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(input.getWindowToken(), 0);

    }
于 2013-03-22T11:54:12.363 回答