android里面怎样强制弹出键盘啊

2024-11-17 16:39:56
推荐回答(4个)
回答1:

Android软键盘强制弹出及隐藏输入法的方法:

  • 很多应用中对于一个界面比如进入搜索界面或者修改信息等等情况,为了用户体验应该自动弹出软键盘而不是让用户主动点击输入框才弹出(因为用户进入该界面必然是为了更改信息)。具体实现这种效果的代码如下:

java代码

     EditText  editText.setFocusable(true);    

        editText.setFocusableInTouchMode(true);    

        editText.requestFocus();    

InputMethodManager inputManager =    

                    (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);    

        inputManager.showSoftInput(editText, 0);    

  • 首先要对指定的输入框请求焦点。然后调用输入管理器弹出软键盘。

    • 警告:对于刚跳到一个新的界面就要弹出软键盘的情况上述代码可能由于界面为加载完全而无法弹出软键盘。此时应该适当的延迟弹出软键盘如998毫秒(保证界面的数据加载完成)。实例代码如下:

        java代码:

        Timer timer = new Timer();    

             timer.schedule(new TimerTask()    

             {    

                 public void run()     

                 {    

                     InputMethodManager inputManager =    

                         (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);    

                     inputManager.showSoftInput(editText, 0);    

                 }    

             },      

                 998);    

        


回答2:

强制弹出键盘?一进入界面就弹出?那只需要在XML文件中 添加 例: android:id="@+id/txtSearch"
android:layout_width="match_parent"
android:layout_height="wrap_content" >



或者代码中editText.requestFocus();

回答3:

你在想要弹出软键盘的地方 加上getWindow().setSoftInputModeWindowManager
.LayoutParams.SOFT_INPUT_STATE_VISIBLE); 这个就好了

回答4:

InputMethodManager m = (InputMethodManager) editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
m.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);