Android扩大点击事件接收区域范围详解手机开发

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)); 
            } 
        }); 
    }

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/3103.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论