public void requestLayout() {
super.requestLayout();
post(measureAndLayout);
}
private final RunnablemeasureAndLayout =new Runnable() {
@Override
public void run() {
measure(
MeasureSpec.makeMeasureSpec(getWidth(), MeasureSpec.EXACTLY),
MeasureSpec.makeMeasureSpec(getHeight(), MeasureSpec.EXACTLY));
layout(getLeft(), getTop(), getRight(), getBottom());
}
};
使用自己定义的requestLayout。