diff options
| author | Romain Guy <romainguy@android.com> | 2009-06-29 14:28:29 -0700 |
|---|---|---|
| committer | Romain Guy <romainguy@android.com> | 2009-06-29 14:28:29 -0700 |
| commit | baac46339da03aed166e8a4240ad063caad019ad (patch) | |
| tree | b66a9b317202c10fd4ebdf3ba1dbe0cbde0eb8e5 /core/java/android/widget/RelativeLayout.java | |
| parent | bd9aa793b19f7aa529ca4123492f8940b96486b8 (diff) | |
Fixes #1940605. MeasureSpec's mode and height were inverted in RelativeLayout.
Also bumps up the cache's number of Nodes.
Diffstat (limited to 'core/java/android/widget/RelativeLayout.java')
| -rw-r--r-- | core/java/android/widget/RelativeLayout.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/core/java/android/widget/RelativeLayout.java b/core/java/android/widget/RelativeLayout.java index 12bb01c18b52..e62dda58ba42 100644 --- a/core/java/android/widget/RelativeLayout.java +++ b/core/java/android/widget/RelativeLayout.java @@ -558,9 +558,9 @@ public class RelativeLayout extends ViewGroup { myWidth); int childHeightMeasureSpec; if (params.width == LayoutParams.FILL_PARENT) { - childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(MeasureSpec.EXACTLY, myHeight); + childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(myHeight, MeasureSpec.EXACTLY); } else { - childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED); + childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(myHeight, MeasureSpec.AT_MOST); } child.measure(childWidthMeasureSpec, childHeightMeasureSpec); } @@ -1403,7 +1403,9 @@ public class RelativeLayout extends ViewGroup { /* * START POOL IMPLEMENTATION */ - private static final int POOL_LIMIT = 12; + // The pool is static, so all nodes instances are shared across + // activities, that's why we give it a rather high limit + private static final int POOL_LIMIT = 100; private static final Pool<Node> sPool = Pools.synchronizedPool( Pools.finitePool(new PoolableManager<Node>() { public Node newInstance() { |
