getheight()和getmeasuredheight()之间的区别

Par*_*ahi 11 android android-layout

我正在浏览这个http://developer.android.com/guide/topics/ui/declaring-layout.html,当我越过一条线,说明高度可能但不必与测量高度不同,我在想如何测量的高度与布局的高度不同.

小智 14

在计算布局中的所有视图并将其放置在屏幕中之前,方法View#getMeasuredWidth()View#getMeasuredHeight()表示视图想要的尺寸.

View#onMeasure(int, int)View#onLayout(boolean, int, int, int, int),观点测量可以改变,以适应一切.然后可以通过View#getWidth()和访问这些(可能的)新值View#getHeight().

View类引用:

视图的大小用宽度和高度表示.视图实际上具有两对宽度和高度值.

第一对称为测量宽度和测量高度.这些维度定义了视图在其父级中的大小(有关更多详细信息,请参阅布局.)可以通过调用getMeasuredWidth()和getMeasuredHeight()来获取测量的维度.

第二对简称为宽度和高度,有时也称为绘图宽度和绘图高度.这些尺寸定义了屏幕上,绘图时和布局后视图的实际大小.这些值可以但不必与测量的宽度和高度不同.可以通过调用getWidth()和getHeight()来获得宽度和高度.

  • 它只是我 - 或者它是否像名字是错误的方式?对我来说,"测量"似乎意味着实际的,真实的,最终测量的高度! (3认同)