viewpager 打开界面一直弹出软键盘

1)当在某个页面输入信息时弹出软键盘,使用ViewPager切换页面时,软键盘依旧存在。
解决方法:1、定义两个变量
             private InputMethodManager manager;
             private View currentFocus;
          2、在onCreate中初始化manager
             manager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
          3、在ViewPager的事件监听onPageSelected中定义隐藏输入法
             /**解决ViewPager切换页面时软键盘依旧弹出的问题*/
    currentFocus = MainActivity.this.getCurrentFocus();//得到获取焦点的view
    if(currentFocus != null){
//检查输入法是否打开
if(manager.isActive()){
    //隐藏软键盘
    try {
manager.hideSoftInputFromWindow(currentFocus.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
    } catch (Exception e) {
e.printStackTrace();
      }
}

   }


2)使用ViewPager切换页面,当使用软键盘输入时,底部的按钮视图会被顶上去。
解决方法:在AndroidManifest.xml中将使用ViewPager的Activity里添加android:windowSoftInputMode="adjustPan" 
          如:<activity
                  android:name=".MainActivity"
               android:label="@string/app_name"
                  android:windowSoftInputMode="adjustPan" >
                  <intent-filter>
                      <action android:name="android.intent.action.MAIN" />


                      <category android:name="android.intent.category.LAUNCHER" />
                  </intent-filter>
              </activity>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值