【发布时间】:2013-06-28 20:16:20
【问题描述】:
我有一个 RelativeLayout 作为根元素。根元素下有三个 LinearLayout。第一个和最后一个具有固定高度,中间的占据屏幕的其余部分。
中间的LinearLayout里面有两个ScrollView。我以编程方式在其中添加新视图。无论屏幕大小如何,我都想在滚动视图中显示三个项目。
问题是,我无法计算 are 的高度,所以我无法将其除以三并获得所需的项目高度。
我尝试调用 measure() 和 getMeasuredHeight() 但 LinearLayout 返回 21(我不知道为什么)并且 ScrollViews 返回 0。LinearLayout 和 ScrollViews 都有 match_parent 属性。
那么我怎样才能得到实际的高度呢?我知道它是在某处计算的,因为我可以看到它覆盖了所有空白区域。
【问题讨论】:
-
AFAIK 视图和布局在您的
onCreate方法中尚未显示,它们只是被初始化。之后,Android 系统会根据像素密度和屏幕分辨率将它们“适配”到您的屏幕上。根据您的应用程序和所需的逻辑,您应该找到一种方法从onCreate中获取这些措施。
标签: android scrollview android-relativelayout