Fix for bug 6050753.
The method:
TypedArray: getLayoutDimension(int, String)
throws an undocumented exception when either the width and/or height
attributes are undefined.
See the bug report above for reasons why this was deemed unhelpful both
in the tools area and to developers in general.
Fix by:
1. Documenting the conditions under which the method raises an exception.
2. Deprecating the method, advising callers to supply a default instead.
Additionally, redefine the:
ViewGroup: setBaseAttributes(TypedArray, int, int);
methods to provide the appropriate defaults in ViewGroup subclasses as
advised above.
For the platform layouts the default value is WRAP_CONTENT (and is
defined in the ViewGroup.LayoutParams class). The special cases
are accomodated in LayoutParams subclasses in the following cases:
Subclass width height
FrameLayout.LayoutParams: MATCH_PARENT, MATCH_PARENT
TableLayout.LayoutParams: MATCH_PARENT, WRAP_CONTENT
TableRow.LayoutParams: MATCH_PARENT, WRAP_CONTENT
Change-Id: I335a3bd8e2d7f7866692898ed73492635a5b61ea
8 files changed