问题背景:在Android应用中,当跳转到某个Activity时,该Activity显示页面的EditText获得焦点,在某些机器中会触发软键盘的自动弹出。有时候为了更好的用户体验,需要控制在用户点击EditText时才弹出软键盘,即需要才弹出。

方法一:
在androidminifest文件当中,在需要屏蔽输入法的Activity里添加属性: android:windowSoftInputMode=”adjustPan|stateHidden” 。
adjustPan:保证控件兼容
stateHidden:隐藏输入法
方法评论:简单

方法二:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEdit.getWindowToken(), 0); //myEdit是需要禁止自动弹出软键盘的EditText对象。
方法评论:比较专业。

方法三:
在activity的Oncreate()方法中添加下面这句代码即可。
//设置在activity启动的时候输入法默认是不开启的
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
需要输入的时候点击就会弹出输入法

方法四:
和方法二相似,只是设置的方法不一样:
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.toggleSoftInput(0,
InputMethodManager.HIDE_NOT_ALWAYS);
该方法适用与click事件中。

更多相关文章

  1. 初涉Android蓝牙开发
  2. android的Handler
  3. AsyncTask的用法
  4. android之Fragment(官网资料翻译)
  5. Android中String资源文件的format方法
  6. Android(安卓)开发必读:如何成为一名优秀的Android开发者
  7. Android(安卓)获取并显示远程图片 Picasso框架的使用(二)
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. android 复制 粘贴 剪切功能应用
  2. 技术|Android安装包极限优化
  3. android 学习摘要
  4. 【M3U8】测试地址及android播放器
  5. android可重复利用的自定义提示确认框
  6. PreferenceFragment详解
  7. CDH基于Kerberos身份认证和基于Sentry的
  8. Android(安卓)音乐裁剪器
  9. Android(安卓)Reference官方描述
  10. Android(安卓)Studio - 快捷键详解-MAC版