Android Studio点击空白处收起软键盘

Android Studio点击空白处收起软键盘,第1张

概述AndroidStudio点击空白处收起软键盘//点击空白区域隐藏键盘@OverridepublicbooleandispatchTouchEvent(MotionEventev){if(ev.getAction()==MotionEvent.ACTION_DOWN){Viewv=getCurrentFocus();//当isShouldHide

AndroID Studio点击空白处收起软键盘

//点击空白区域隐藏键盘    @OverrIDe    public boolean dispatchtouchEvent(MotionEvent ev) {        if (ev.getAction() == MotionEvent.ACTION_DOWN) {            VIEw v = getCurrentFocus();            //当isShouldHIDeinput(v, ev)为true时,表示的是点击输入框区域,则需要显示键盘,同时显示光标,反之,需要隐藏键盘、光标            if (isShouldHIDeinput(v, ev)) {                inputMethodManager imm = (inputMethodManager) getSystemService(Context.input_METHOD_SERVICE);                if (imm != null) {                    imm.hIDeSoftinputFromWindow(v.getwindowToken(), 0);                    //处理Editext的光标隐藏、显示逻辑                    //  t1.clearFocus();                }            }            return super.dispatchtouchEvent(ev);        }        // 必不可少,否则所有的组件都不会有touchEvent了        if (getwindow().superdispatchtouchEvent(ev)) {            return true;        }        return ontouchEvent(ev);    }    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;    }
总结

以上是内存溢出为你收集整理的Android Studio点击空白处收起软键盘全部内容,希望文章能够帮你解决Android Studio点击空白处收起软键盘所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1062080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存