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