Android扩大点击事件接收区域范围

如果有些icon或者ImageView,这些View本身很小,就扩大这些事件的接收区域。直接传入需要扩大事件接收区域的view,也可以自定义指定扩大多少尺寸size。默认到的方法是在原View四周增加20pix。

    public static void expandTouchArea(View view) { 
        setTouchDelegate(view, 20); 
    } 
 
    public static void expandTouchArea(View view, int size) { 
        View parentView = (View) view.getParent(); 
        parentView.post(new Runnable() { 
            @Override 
            public void run() { 
                Rect rect = new Rect(); 
                view.getHitRect(rect); 
 
                rect.top -= size; 
                rect.bottom += size; 
                rect.left -= size; 
                rect.right += size; 
 
                parentView.setTouchDelegate(new TouchDelegate(rect, view)); 
            } 
        }); 
    }

发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

Android获取设备屏幕宽高pix值的两个方法详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。