文档章节

android中点击空白处隐藏软键盘

码农Seven丶
 码农Seven丶
发布于 2015/06/16 17:27
字数 155
阅读 126
收藏 0

首先说下在普通Activity中的实现:

InputMethodManager manager manager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);

@Override
 public boolean onTouchEvent(MotionEvent event) {
  // TODO Auto-generated method stub
  if(event.getAction() == MotionEvent.ACTION_DOWN){
     if(getCurrentFocus()!=null && getCurrentFocus().getWindowToken()!=null){
       manager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
     }
  }
  return super.onTouchEvent(event);
 }


如果是Fragment的话,需要先让其中的view实现

view.setOnTouchListener(this);

…………………………


@Override
public boolean onTouch(View v, MotionEvent event) {
    getActivity().dispatchTouchEvent(event);
    return false;
}

然后其父类Activity中实现dispatchTouchEvent方法(在onTouchEvent不起作用的前提下)

@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
    System.out.println("dispatchTouchEvent");
    if(ev.getAction() == MotionEvent.ACTION_DOWN){
        if(getCurrentFocus()!=null && getCurrentFocus().getWindowToken()!=null){
            manager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
        }
    }
    return super.dispatchTouchEvent(ev);
}


© 著作权归作者所有

共有 人打赏支持
码农Seven丶
粉丝 1
博文 27
码字总数 4766
作品 0
朝阳
私信 提问
android 键盘状态,获取键盘显示和隐藏

要设置弹出键盘是否覆盖Activity的view,或者软键盘的显示隐藏状态,需要用到Activity的一个属性: android:windowSoftInputMode 该属性在AndroidManifest.xml中设置,如下: <activity andr...

Remix_jx
2015/01/18
0
0
android软键盘弹出引起的各种不适终极解决方案

很多写登录界面的开发者都会遇到一个问题:那就是在登录界面时,当你点击输入框时,下边的按钮有时会被输入框挡住,这个不利于用户的体验,所以很多人希望软键盘弹出时,也能把按钮挤上去。很...

simpower
2014/09/21
0
2
android软键盘的显示后隐藏

一:简述 点击文本框EditText,系统会自动弹出软键盘(其本质是一个Dialog),这必然会引起当前Activity主窗口的大小调整 而Android提供了不同的可选模式去调整活动窗口的大小,与之相关的属性...

sxl01890
2015/08/26
0
0
Android软键盘的隐藏显示研究

Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入。 那么,弹出软键盘后必然会造成原有布局高度的减少,那么系统应该如何来处理布局的...

迷途d书童
2012/03/30
7.3K
0
Android:imeOptions来改变软键盘Enter键图标

1.actionUnspecified 未指定,对应常量EditorInfo.IMEACTIONUNSPECIFIED. 2.actionNone 没有动作,对应常量EditorInfo.IMEACTIONNONE 3.actionGo 去往,对应常量EditorInfo.IMEACTIONGO 4.acti......

Erichkko
2015/10/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

程序中设置MySQL的默认值

import com.alibaba.fastjson.JSON;import java.beans.PropertyDescriptor;import java.lang.annotation.*;import java.lang.reflect.Field;import java.lang.reflect.Method;impo......

laolin23
23分钟前
2
0
WordPress没有上级目录的写权限

sudo chmod -R 777 wordpress/wp-content

临江仙卜算子
30分钟前
4
0
大数据学习之大数据技术笔记—spring入门

篇一 spring介绍 spring.io 官网 快速开始 Aop 面向切面编程,可以任何位置,并且可以细致到方法上 连接框架与框架 Spring 就是 IOC AOP 思想 有效的组织中间层对象一般都是切入 service 层 ...

董黎明
32分钟前
5
0
ASP.NET Core MVC 静态文件配置

在启动文件中添加以下配置 public class Startup{ public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddDirectoryBrowser(); ......

whltian
今天
2
0
linux之自定义命令

本人使用的是ubuntu系统,不喜欢建各种桌面快捷链接,但是每次启动个软件,去查找又麻烦,所以自定义了命令,来快捷的启动应用: 1、修改/etc/bash.bashrc,在文件末尾,加上如下List-1中的内...

克虏伯
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部