隐藏软键盘的方法
来源:互联网 发布:江苏微盛网络 怎么样 编辑:程序博客网 时间:2024/05/21 14:02
@Overridepublic boolean dispatchTouchEvent(MotionEvent ev) {if (ev.getAction() == MotionEvent.ACTION_DOWN) {// 获得当前得到焦点的View,一般情况下就是EditText(特殊情况就是轨迹求或者实体案件会移动焦点)View v = getCurrentFocus();if (isShouldHideInput(v, ev)) {InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);if (imm != null) {imm.hideSoftInputFromWindow(v.getWindowToken(), 0);}}return super.dispatchTouchEvent(ev);}// 必不可少,否则所有的组件都不会有TouchEvent了if (getWindow().superDispatchTouchEvent(ev)) {return true;}return onTouchEvent(ev);}/** * 根据EditText所在坐标和用户点击的坐标相对比,来判断是否隐藏键盘,因为当用户点击EditText时没必要隐藏 * * @param v * @param event * @return */public boolean isShouldHideInput(View v, MotionEvent event) {if (v != null && (v instanceof EditText)) {int[] leftTop = { 0, 0 };//获取输入框当前的location位置v.getLocationInWindow(leftTop);int left = leftTop[0];int top = leftTop[1];int bottom = top + v.getHeight();int right = left + v.getWidth();if (event.getX() > left && event.getX() < right&& event.getY() > top && event.getY() < bottom) {// 点击的是输入框区域,保留点击EditText的事件return false;} else {return true;}}return false;}
0 0
- 隐藏软键盘的方法
- 隐藏软键盘的方法
- 隐藏软键盘的另一种方法
- Android 完美的隐藏软键盘方法
- Android中隐藏软键盘的方法
- 点击屏幕隐藏软键盘的方法
- 隐藏和显示 软键盘的方法
- EditText隐藏软键盘的方法
- 显示、隐藏软键盘的硬方法
- android隐藏软键盘的方法
- Android隐藏软键盘的方法
- Android PopupWindow 隐藏软键盘的方法
- 最有效的隐藏软键盘方法
- Android软键盘的弹出 隐藏部分界面的方法
- windowsphone7 关于隐藏虚拟软键盘(SIP)的方法
- Android中显示/隐藏软键盘的相关方法
- android 软键盘遮挡或隐藏 edittext的方法
- 点击空白处隐藏软键盘的方法
- MapReduce 程序模板 (采用 新/旧API)
- MSSQL远程连接
- AngularJS学习笔记
- JSP的九大内置对象和四个作用域
- 使用Python获取/dev/input目录下event对应的设备
- 隐藏软键盘的方法
- 代码重构-总结 前辈的重构经验
- url 变 string NSString 与 char*
- 对于windows 2003,可以两人同时同一桌面控制一台服务器
- DoModal出来的窗口往主窗口发送消息
- 三十分钟掌握STL
- jQuery中对select下拉框的基本操作
- nexus7刷机流程
- Java执行带重定向或管道的shell命令的问题