Most visited

Recently visited

Added in API level 1

ViewGroup.LayoutParams

public static class ViewGroup.LayoutParams
extends Object

java.lang.Object
   ↳ android.view.ViewGroup.LayoutParams
Known Direct Subclasses
Known Indirect Subclasses


LayoutParams are used by views to tell their parents how they want to be laid out. See ViewGroup Layout Attributes for a list of all child view attributes that this class supports.

The base LayoutParams class just describes how big the view wants to be for both width and height. For each dimension, it can specify one of:

There are subclasses of LayoutParams for different subclasses of ViewGroup. For example, AbsoluteLayout has its own subclass of LayoutParams which adds an X and Y value.

Developer Guides

For more information about creating user interface layouts, read the XML Layouts developer guide.

Summary

XML attributes

android:layout_height Specifies the basic height of the view. 
android:layout_width Specifies the basic width of the view. 

Constants

int FILL_PARENT

Special value for the height or width requested by a View.

int MATCH_PARENT

Special value for the height or width requested by a View.

int WRAP_CONTENT

Special value for the height or width requested by a View.

Fields

public int height

Information about how tall the view wants to be.

public LayoutAnimationController.AnimationParameters layoutAnimationParameters

Used to animate layouts.

public int width

Information about how wide the view wants to be.

Public constructors

ViewGroup.LayoutParams(Context c, AttributeSet attrs)

Creates a new set of layout parameters.

ViewGroup.LayoutParams(int width, int height)

Creates a new set of layout parameters with the specified width and height.

ViewGroup.LayoutParams(ViewGroup.LayoutParams source)

Copy constructor.

Public methods

void resolveLayoutDirection(int layoutDirection)

Resolve layout parameters depending on the layout direction.

Protected methods

void setBaseAttributes(TypedArray a, int widthAttr, int heightAttr)

Extracts the layout parameters from the supplied attributes.

Inherited methods

From class java.lang.Object

XML attributes

android:layout_height

Specifies the basic height of the view. This is a required attribute for any view inside of a containing layout manager. Its value may be a dimension (such as "12dip") for a constant height or one of the special constants.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), mm (millimeters).

This may also be a reference to a resource (in the form "@[package:]type:name") or theme attribute (in the form "?[package:][type:]name") containing a value of this type.

May be one of the following constant values.

ConstantValueDescription
fill_parent-1 The view should be as big as its parent (minus padding). This constant is deprecated starting from API Level 8 and is replaced by match_parent.
match_parent-1 The view should be as big as its parent (minus padding). Introduced in API Level 8.
wrap_content-2 The view should be only big enough to enclose its content (plus padding).

This corresponds to the global attribute resource symbol layout_height.

android:layout_width

Specifies the basic width of the view. This is a required attribute for any view inside of a containing layout manager. Its value may be a dimension (such as "12dip") for a constant width or one of the special constants.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), mm (millimeters).

This may also be a reference to a resource (in the form "@[package:]type:name") or theme attribute (in the form "?[package:][type:]name") containing a value of this type.

May be one of the following constant values.

ConstantValueDescription
fill_parent-1 The view should be as big as its parent (minus padding). This constant is deprecated starting from API Level 8 and is replaced by match_parent.
match_parent-1 The view should be as big as its parent (minus padding). Introduced in API Level 8.
wrap_content-2 The view should be only big enough to enclose its content (plus padding).

This corresponds to the global attribute resource symbol layout_width.

Constants

FILL_PARENT

Added in API level 1
int FILL_PARENT

Special value for the height or width requested by a View. FILL_PARENT means that the view wants to be as big as its parent, minus the parent's padding, if any. This value is deprecated starting in API Level 8 and replaced by MATCH_PARENT.

Constant Value: -1 (0xffffffff)

MATCH_PARENT

Added in API level 8
int MATCH_PARENT

Special value for the height or width requested by a View. MATCH_PARENT means that the view wants to be as big as its parent, minus the parent's padding, if any. Introduced in API Level 8.

Constant Value: -1 (0xffffffff)

WRAP_CONTENT

Added in API level 1
int WRAP_CONTENT

Special value for the height or width requested by a View. WRAP_CONTENT means that the view wants to be just large enough to fit its own internal content, taking its own padding into account.

Constant Value: -2 (0xfffffffe)

Fields

height

Added in API level 1
int height

Information about how tall the view wants to be. Can be one of the constants FILL_PARENT (replaced by MATCH_PARENT in API Level 8) or WRAP_CONTENT, or an exact size.

layoutAnimationParameters

Added in API level 1
LayoutAnimationController.AnimationParameters layoutAnimationParameters

Used to animate layouts.

width

Added in API level 1
int width

Information about how wide the view wants to be. Can be one of the constants FILL_PARENT (replaced by MATCH_PARENT in API Level 8) or WRAP_CONTENT, or an exact size.

Public constructors

ViewGroup.LayoutParams

Added in API level 1
ViewGroup.LayoutParams (Context c, 
                AttributeSet attrs)

Creates a new set of layout parameters. The values are extracted from the supplied attributes set and context. The XML attributes mapped to this set of layout parameters are:

Parameters
c Context: the application environment
attrs AttributeSet: the set of attributes from which to extract the layout parameters' values

ViewGroup.LayoutParams

Added in API level 1
ViewGroup.LayoutParams (int width, 
                int height)

Creates a new set of layout parameters with the specified width and height.

Parameters
width int: the width, either WRAP_CONTENT, FILL_PARENT (replaced by MATCH_PARENT in API Level 8), or a fixed size in pixels
height int: the height, either WRAP_CONTENT, FILL_PARENT (replaced by MATCH_PARENT in API Level 8), or a fixed size in pixels

ViewGroup.LayoutParams

Added in API level 1
ViewGroup.LayoutParams (ViewGroup.LayoutParams source)

Copy constructor. Clones the width and height values of the source.

Parameters
source ViewGroup.LayoutParams: The layout params to copy from.

Public methods

resolveLayoutDirection

Added in API level 17
void resolveLayoutDirection (int layoutDirection)

Resolve layout parameters depending on the layout direction. Subclasses that care about layoutDirection changes should override this method. The default implementation does nothing.

Parameters
layoutDirection int: the direction of the layout LAYOUT_DIRECTION_LTR LAYOUT_DIRECTION_RTL

Protected methods

setBaseAttributes

Added in API level 1
void setBaseAttributes (TypedArray a, 
                int widthAttr, 
                int heightAttr)

Extracts the layout parameters from the supplied attributes.

Parameters
a TypedArray: the style attributes to extract the parameters from
widthAttr int: the identifier of the width attribute
heightAttr int: the identifier of the height attribute

Hooray!