ビューをこのViewGroupにドラッグアンドドロップすると、エディターはlayout_widthとlayout_heightを子に設定できないと言うことを除いて、ちょっと機能するカスタムViewGroupを作成しました。何が原因でしょうか?
onLayout と onMeasure の 2 つのメソッドのみをオーバーライドしました。子供の測定方法をまだ理解していないため、onMeasure で間違いを犯したと思います。
とにかく、ここに私のonMeasureがあります:
@Override
protected void onMeasure(final int widthMeasureSpec, final int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
final int childWidthMeasureSpec = MeasureSpec.makeMeasureSpec(
MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.AT_MOST);
final int childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(
MeasureSpec.getSize(heightMeasureSpec), MeasureSpec.AT_MOST);
int count = getChildCount();
for (int i = 0; i < count; ++i) {
View child = getChildAt(i);
child.measure(childWidthMeasureSpec, childHeightMeasureSpec);
}
setMeasuredDimension(mWidth, mHeight);
}
では、viewgroup の子に layout_with および layout_height パラメータを取得させるにはどうすればよいでしょうか?
PS ViewGroup の幅と高さが固定されていることは知っていますが、それが私が望む方法です。