【发布时间】:2014-01-02 09:41:25
【问题描述】:
我必须测量一个View 来分隔其他人。我为此使用此代码:
ViewGroup view = ...;
view.setPadding(10, 0, 10, 0);
int wrapContent = RelativeLayout.LayoutParams.WRAP_CONTENT;
int specWidth = MeasureSpec.makeMeasureSpec(wrapContent, MeasureSpec.AT_MOST);
view.measure(specWidth, specWidth);
int questionWidth = view.getMeasuredWidth();
这在 Android 4.3 模拟器上按预期工作。
但是,在三星 Galaxy XCover 2 (S7710) Android 4.1.2 手机上返回的测量宽度为 16777214...
我尝试了一切,用View.MEASURED_SIZE_MASK 屏蔽,但没有任何帮助。
您能提供一些帮助吗?提前致谢!
【问题讨论】:
-
这将有助于了解您的视图组中的内容(提供 xml)。我刚刚遇到了同样的问题并解决了它,我认为你的没有什么不同,但让我们看看你的布局。 // 您不必屏蔽 getMeasured*() 返回的内容,这些值已经被屏蔽了。
-
没有xml。 ViewGroup 的子项是动态实例化和添加的。
-
在下面查看我的答案
标签: android android-layout view measure