继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

InputMethodManager的用法,键盘,隐藏

白板的微信
关注TA
已关注
手记 341
粉丝 70
获赞 387

今天在过去别人写的代码发现InputMethodManager这个不知道是什么意思,后来到网速搜了一下发现一个博客 写的很好本来想转发的过来可是发现不能转到这里来,只能copy他的文章希望这个大哥看到了不要打我~.~!

其中editText是输入框

InputMethodManager imm = (InputMethodManager)getSystemService(SendActivity.this.INPUT_METHOD_SERVICE);   

//隐藏键盘   

 imm.hideSoftInputFromWindow(editText.getWindowToken(), 0);    

//显示键盘   

 imm.showSoftInput(editText, 0);  

程序启动后直接弹出软键盘,不能直接在OnCreate中设置,必须等View绘制事件完毕才可以弹出,需要用到Timer辅助实现,如果要实现输入的功能,必须让EditText获得焦点。

代码如下:

//应用启动后自动打开输入法

@Override public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState);     
    setContentView(R.layout.main);
      Timer timer = new Timer();        
      timer.schedule(new TimerTask() {           
      @Override                
      public void run() {           
          InputMethodManager imm = (InputMethodManager)MainActivity.this.getSystemService(INPUT_METHOD_SERVICE);                         imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);                         Toast.makeText(MainActivity.this, "show", Toast.LENGTH_SHORT).show();                     }
      }, 1000);  //在一秒后打开
}

自动关闭:

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

禁止弹出

              android:name=".ClientSearchViewActivity"
            android:label="@string/app_name" 
            android:screenOrientation="portrait"
            android:windowSoftInputMode="adjustUnspecified|stateHidden"
            android:configChanges="orientation|keyboardHidden">

原文链接:http://www.apkbus.com/blog-455907-60045.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP