1.首先在配置文件中添加
android:windowSoftInputMode="adjustResize"  意思是activity会根据软键盘的显示和消失始终调节布局的大小
2.
 @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        final RelativeLayout rl = (RelativeLayout) findViewById(R.id.rl);        rl.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {            @Override            public void onGlobalLayout() {                int heightDiff = rl.getRootView().getHeight() - rl.getHeight();                if (heightDiff > dpToPx(MainActivity.this, 200)) { // if more than 200 dp, it's probably a keyboard...                    // ... do something here                    Log.d("TAG","aaaa");//显示                }else {                    Log.d("TAG","bbbb");//消失                }            }        });    }//    COMPLEX_UNIT_DIP    public static float dpToPx(Context context, float valueInDp) {        DisplayMetrics metrics = context.getResources().getDisplayMetrics();        return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, valueInDp, metrics);    }
3.这时候进入程序会发现输入法会自动弹出,是应为exidtext自动获取了焦点,在父布局添加如下代码
android:focusable="true"android:focusableInTouchMode="true"

4.现在就可以完美的监听软键盘的显示和消失了

更多相关文章

  1. android遮罩层
  2. Android隐藏标题栏的四种方法
  3. delphi xe5 android 关于文件大小的几个问答O(∩_∩)O~
  4. 数组资源(arrays)的使用
  5. Android之代码创建布局
  6. android 解决输入法键盘遮盖布局问题
  7. layout 向下一级传点击事件 descendantFocusability
  8. 简单实现RecyclerView版本的竖向翻页效果
  9. Android(安卓)App快速启动

随机推荐

  1. Android(安卓)序列化 Parcelable VS Seri
  2. Android(安卓)5.0 CardView+ListView 卡
  3. 自己关于Android上下文对象的理解
  4. Android(安卓)自定义 attr
  5. android之 h5调用系统相机和相册并显示
  6. Android(安卓)studio 如何设置字体大小
  7. Android使用Kotlin+Anko开发简化开发中的
  8. 图片切换ImageSwitcher&Gallery
  9. Android实现图片浮动随意拖拽效果
  10. Android(安卓)ApiDemos示例解析(163):Vie