IT虾米网

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

mate10pro 2018年05月31日 手机开发 1803 0

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虾米 (左侧二维码扫一扫)欢迎添加!