我有一个包含一个子节点的ViewGroup(ImageButton)。 我希望viewGroup具有其子级的确切大小。
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int desiredWidth = getChildAt(0).getMeasuredWidth();
int desiredHeight = getChildAt(0).getMeasuredHeight();
int width = resolveSize(desiredWidth,widthMeasureSpec);
int height = resolveSize(desiredHeight,heightMeasureSpec);
setMeasuredDimension(width,height);
}
我通过getMeasuredWidth()和getMeasuredWidth()获得子项大小(ImageButton),但它们返回0值。
答案 0 :(得分:0)
您没有测量子视图,因此其宽度和高度未设置(尚未)。
在你的方法中调用super.onMeasure(...)
让你的超级类测量孩子,或者通过调用child.measure(widthMeasureSpec, heightMeasureSpec)
自己动手。