我想获取布局的宽度(以像素为单位)。
我尝试了这个:

LinearLayout galleryContainer = (LinearLayout)findViewById(R.id.galleryContainerLayout);
int galleryWidth= galleryContainer.getLayoutParams().width;


如果我吐出galleryWidth,它说“ -1”。

我也试过

galleryContainer.getWidth()


但它在第一次给出0,然后在第二次给出480(实际大小),所以就像我在布局渗透到其尺寸之前得到像素一样。

我勒个去?

我如何才能真正获得以像素为单位的布局宽度?还是一些确切的值,例如dip?

最佳答案

在呼叫measure()之前使用getWidth()

galleryContainer.measure(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT);

07-24 09:48