为什么我的视图宽度和高度为0

时间:2013-03-03 18:29:51

标签: java android

您好我正在使用此代码

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

但是高度和宽度返回零,为什么它不起作用,如何获得我的视图的高度和宽度。提前致谢

2 个答案:

答案 0 :(得分:1)

Width and Height of the view can be measured after drawing to the screen。您的inflatted视图尚未在屏幕上绘制 所以如果你想得到高度和宽度 试试这个。

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();

答案 1 :(得分:1)

getHeight()和getWidth()在未绘制组件时返回0。 因此,您只需绘制组件并获取绘制组件的测量值。