public
static
class
RelativeLayout.LayoutParams
extends ViewGroup.MarginLayoutParams
java.lang.Object | |||
↳ | android.view.ViewGroup.LayoutParams | ||
↳ | android.view.ViewGroup.MarginLayoutParams | ||
↳ | android.widget.RelativeLayout.LayoutParams |
Known Direct Subclasses |
Per-child layout information associated with RelativeLayout.
XML attributes | |
---|---|
android:layout_above |
Positions the bottom edge of this view above the given anchor view ID. |
android:layout_alignBaseline |
Positions the baseline of this view on the baseline of the given anchor view ID. |
android:layout_alignBottom |
Makes the bottom edge of this view match the bottom edge of the given anchor view ID. |
android:layout_alignEnd |
Makes the end edge of this view match the end edge of the given anchor view ID. |
android:layout_alignLeft |
Makes the left edge of this view match the left edge of the given anchor view ID. |
android:layout_alignParentBottom |
If true, makes the bottom edge of this view match the bottom edge of the parent. |
android:layout_alignParentEnd |
If true, makes the end edge of this view match the end edge of the parent. |
android:layout_alignParentLeft |
If true, makes the left edge of this view match the left edge of the parent. |
android:layout_alignParentRight |
If true, makes the right edge of this view match the right edge of the parent. |
android:layout_alignParentStart |
If true, makes the start edge of this view match the start edge of the parent. |
android:layout_alignParentTop |
If true, makes the top edge of this view match the top edge of the parent. |
android:layout_alignRight |
Makes the right edge of this view match the right edge of the given anchor view ID. |
android:layout_alignStart |
Makes the start edge of this view match the start edge of the given anchor view ID. |
android:layout_alignTop |
Makes the top edge of this view match the top edge of the given anchor view ID. |
android:layout_alignWithParentIfMissing |
If set to true, the parent will be used as the anchor when the anchor cannot be be found for layout_toLeftOf, layout_toRightOf, etc. |
android:layout_below |
Positions the top edge of this view below the given anchor view ID. |
android:layout_centerHorizontal |
If true, centers this child horizontally within its parent. |
android:layout_centerInParent |
If true, centers this child horizontally and vertically within its parent. |
android:layout_centerVertical |
If true, centers this child vertically within its parent. |
android:layout_toEndOf |
Positions the start edge of this view to the end of the given anchor view ID. |
android:layout_toLeftOf |
Positions the right edge of this view to the left of the given anchor view ID. |
android:layout_toRightOf |
Positions the left edge of this view to the right of the given anchor view ID. |
android:layout_toStartOf |
Positions the end edge of this view to the start of the given anchor view ID. |
Inherited XML attributes | |
---|---|
From
class
android.view.ViewGroup.MarginLayoutParams
| |
From
class
android.view.ViewGroup.LayoutParams
|
Inherited constants |
---|
From
class
android.view.ViewGroup.LayoutParams
|
Fields | |
---|---|
public
boolean |
alignWithParent
When true, uses the parent as the anchor if the anchor doesn't exist or if the anchor's visibility is GONE. |
Inherited fields |
---|
From
class
android.view.ViewGroup.MarginLayoutParams
|
From
class
android.view.ViewGroup.LayoutParams
|
Public constructors | |
---|---|
RelativeLayout.LayoutParams(Context c, AttributeSet attrs)
|
|
RelativeLayout.LayoutParams(int w, int h)
|
|
RelativeLayout.LayoutParams(ViewGroup.LayoutParams source)
|
|
RelativeLayout.LayoutParams(ViewGroup.MarginLayoutParams source)
|
|
RelativeLayout.LayoutParams(RelativeLayout.LayoutParams source)
Copy constructor. |
Public methods | |
---|---|
void
|
addRule(int verb, int subject)
Adds a layout rule to be interpreted by the RelativeLayout. |
void
|
addRule(int verb)
Adds a layout rule to be interpreted by the RelativeLayout. |
String
|
debug(String output)
Returns a String representation of this set of layout parameters. |
int
|
getRule(int verb)
Returns the layout rule associated with a specific verb. |
int[]
|
getRules()
Retrieves a complete list of all supported rules, where the index is the rule verb, and the element value is the value specified, or "false" if it was never set. |
void
|
removeRule(int verb)
Removes a layout rule to be interpreted by the RelativeLayout. |
void
|
resolveLayoutDirection(int layoutDirection)
This will be called by |
Inherited methods | |
---|---|
From
class
android.view.ViewGroup.MarginLayoutParams
| |
From
class
android.view.ViewGroup.LayoutParams
| |
From
class
java.lang.Object
|
Positions the bottom edge of this view above the given anchor view ID. Accommodates bottom margin of this view and top margin of anchor view.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_above
.
Positions the baseline of this view on the baseline of the given anchor view ID.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignBaseline
.
Makes the bottom edge of this view match the bottom edge of the given anchor view ID. Accommodates bottom margin.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignBottom
.
Makes the end edge of this view match the end edge of the given anchor view ID. Accommodates end margin.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignEnd
.
Makes the left edge of this view match the left edge of the given anchor view ID. Accommodates left margin.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignLeft
.
If true, makes the bottom edge of this view match the bottom edge of the parent. Accommodates bottom margin.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignParentBottom
.
If true, makes the end edge of this view match the end edge of the parent. Accommodates end margin.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignParentEnd
.
If true, makes the left edge of this view match the left edge of the parent. Accommodates left margin.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignParentLeft
.
If true, makes the right edge of this view match the right edge of the parent. Accommodates right margin.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignParentRight
.
If true, makes the start edge of this view match the start edge of the parent. Accommodates start margin.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignParentStart
.
If true, makes the top edge of this view match the top edge of the parent. Accommodates top margin.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignParentTop
.
Makes the right edge of this view match the right edge of the given anchor view ID. Accommodates right margin.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignRight
.
Makes the start edge of this view match the start edge of the given anchor view ID. Accommodates start margin.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignStart
.
Makes the top edge of this view match the top edge of the given anchor view ID. Accommodates top margin.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_alignTop
.
If set to true, the parent will be used as the anchor when the anchor cannot be be found for layout_toLeftOf, layout_toRightOf, etc.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_alignWithParentIfMissing
.
Positions the top edge of this view below the given anchor view ID. Accommodates top margin of this view and bottom margin of anchor view.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_below
.
If true, centers this child horizontally within its parent.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_centerHorizontal
.
If true, centers this child horizontally and vertically within its parent.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_centerInParent
.
If true, centers this child vertically within its parent.
Must be a boolean value, either "true
" or "false
".
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.
This corresponds to the global attribute
resource symbol layout_centerVertical
.
Positions the start edge of this view to the end of the given anchor view ID. Accommodates start margin of this view and end margin of anchor view.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_toEndOf
.
Positions the right edge of this view to the left of the given anchor view ID. Accommodates right margin of this view and left margin of anchor view.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_toLeftOf
.
Positions the left edge of this view to the right of the given anchor view ID. Accommodates left margin of this view and right margin of anchor view.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_toRightOf
.
Positions the end edge of this view to the start of the given anchor view ID. Accommodates end margin of this view and start margin of anchor view.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol layout_toStartOf
.
boolean alignWithParent
When true, uses the parent as the anchor if the anchor doesn't exist or if the anchor's visibility is GONE.
RelativeLayout.LayoutParams (Context c, AttributeSet attrs)
Parameters | |
---|---|
c |
Context
|
attrs |
AttributeSet
|
RelativeLayout.LayoutParams (int w, int h)
Parameters | |
---|---|
w |
int
|
h |
int
|
RelativeLayout.LayoutParams (ViewGroup.LayoutParams source)
Parameters | |
---|---|
source |
ViewGroup.LayoutParams
|
RelativeLayout.LayoutParams (ViewGroup.MarginLayoutParams source)
Parameters | |
---|---|
source |
ViewGroup.MarginLayoutParams
|
RelativeLayout.LayoutParams (RelativeLayout.LayoutParams source)
Copy constructor. Clones the width, height, margin values, and rules of the source.
Parameters | |
---|---|
source |
RelativeLayout.LayoutParams :
The layout params to copy from.
|
void addRule (int verb, int subject)
Adds a layout rule to be interpreted by the RelativeLayout.
Use this for verbs that refer to a sibling (ex.
ALIGN_RIGHT
) or take a boolean value (ex.
CENTER_IN_PARENT
).
If the rule is relative to the layout direction (ex.
START_OF
), then the layout direction must be resolved using
resolveLayoutDirection(int)
before calling
getRule(int)
with an absolute rule (ex. LEFT_OF
.
Parameters | |
---|---|
verb |
int :
a layout verb, such as ALIGN_RIGHT |
subject |
int :
the ID of another view to use as an anchor, or a
boolean value (represented as TRUE for true
or 0 for false) |
See also:
void addRule (int verb)
Adds a layout rule to be interpreted by the RelativeLayout.
This method should only be used for verbs that don't refer to a
sibling (ex. ALIGN_RIGHT
) or take a boolean
value (TRUE
for true or 0 for false). To
specify a verb that takes a subject, use addRule(int, int)
.
If the rule is relative to the layout direction (ex.
ALIGN_PARENT_START
), then the layout direction must be
resolved using resolveLayoutDirection(int)
before calling
getRule(int)
an absolute rule (ex.
ALIGN_PARENT_LEFT
.
Parameters | |
---|---|
verb |
int :
a layout verb, such as ALIGN_PARENT_LEFT |
String debug (String output)
Returns a String representation of this set of layout parameters.
Parameters | |
---|---|
output |
String :
the String to prepend to the internal representation |
Returns | |
---|---|
String |
a String with the following format: output + "ViewGroup.LayoutParams={ width=WIDTH, height=HEIGHT }" |
int getRule (int verb)
Returns the layout rule associated with a specific verb.
Parameters | |
---|---|
verb |
int :
one of the verbs defined by RelativeLayout , such
as ALIGN_WITH_PARENT_LEFT |
Returns | |
---|---|
int |
the id of another view to use as an anchor, a boolean value
(represented as TRUE for true
or 0 for false), or -1 for verbs that don't refer to another
sibling (for example, ALIGN_WITH_PARENT_BOTTOM) |
See also:
int[] getRules ()
Retrieves a complete list of all supported rules, where the index is the rule verb, and the element value is the value specified, or "false" if it was never set. There will be no resolution of relative rules done.
Returns | |
---|---|
int[] |
the supported rules |
See also:
void removeRule (int verb)
Removes a layout rule to be interpreted by the RelativeLayout.
If the rule is relative to the layout direction (ex.
START_OF
, ALIGN_PARENT_START
, etc.) then the
layout direction must be resolved using
resolveLayoutDirection(int)
before before calling
getRule(int)
with an absolute rule (ex. LEFT_OF
.
Parameters | |
---|---|
verb |
int :
One of the verbs defined by
RelativeLayout , such as
ALIGN_WITH_PARENT_LEFT. |
void resolveLayoutDirection (int layoutDirection)
This will be called by requestLayout()
to
resolve layout parameters that are relative to the layout direction.
After this method is called, any rules using layout-relative verbs
(ex. START_OF
) previously added via addRule(int)
may only be accessed via their resolved absolute verbs (ex.
LEFT_OF
).
Parameters | |
---|---|
layoutDirection |
int :
the direction of the layout
LAYOUT_DIRECTION_LTR
LAYOUT_DIRECTION_RTL
|