1.定义放大点击区域工具类
package com.sdt.matter.common.utils;
import android.graphics.Rect;
import android.view.TouchDelegate;
import android.view.View;
public class ExpandedTouchViewUtil {
private static final int EXPAND_SIZE = 10;
public static void expandTouchArea(View view) {
final View parent = (View) view.getParent();
parent.post(new Runnable() {
@Override
public void run() {
Rect rect = new Rect();
view.getHitRect(rect);
rect.top -= EXPAND_SIZE;
rect.left -= EXPAND_SIZE;
rect.right += EXPAND_SIZE;
rect.bottom += EXPAND_SIZE;
TouchDelegate delegate = new TouchDelegate(rect, view);
parent.setTouchDelegate(delegate);
}
});
}
}
2.传入需要放大点击区域的控件
ExpandedTouchViewUtil.expandTouchArea(mBinding.titleBar.homesChangeBtn);
ExpandedTouchViewUtil.expandTouchArea(mBinding.tabMoreBtn);