1

こんにちは、私はこのコードを使用しています

View v= inflater.inflate(R.layout.mylayout, null, false);
int width=v.getWidth();
int height=v.getHeight();

しかし、高さと幅はゼロを返します。なぜ機能しないのですか、ビューの高さと幅を取得する方法。前もって感謝します

4

2 に答える 2

1

Width and Height of the view can be measured after drawing to the screen. 膨張したビューはまだ画面に描画されていないため、高さと幅を取得したい場合はこれを試してください。

View contentview = inflater.inflate(R.layout.mylayout, null, false);
contentview.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
int width = contentview.getMeasuredWidth();
int height = contentview.getMeasuredHeight();
于 2013-03-03T18:31:16.093 に答える
1

コンポーネントが描画されていない場合、getHeight() および getWidth() は 0 を返します。したがって、コンポーネントを描画して、描画されたコンポーネントの測定値を取得するだけです。

于 2013-03-03T18:35:31.797 に答える