LayoutParams
open class LayoutParams : ViewGroup.MarginLayoutParams
kotlin.Any | |||
↳ | android.view.ViewGroup.LayoutParams | ||
↳ | android.view.ViewGroup.MarginLayoutParams | ||
↳ | android.widget.RelativeLayout.LayoutParams |
Specifies how a view is positioned within a RelativeLayout
. The relative layout containing the view uses the value of these layout parameters to determine where to position the view on the screen. If the view is not contained within a relative layout, these attributes are ignored. See the Relative Layout guide for example code demonstrating how to use relative layout's layout parameters in a layout XML. To learn more about layout parameters and how they differ from typical view attributes, see the Layouts guide.
Summary
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 | |
---|---|
Inherited constants | |
---|---|
Public constructors | |
---|---|
LayoutParams(c: Context!, attrs: AttributeSet!) |
|
LayoutParams(source: ViewGroup.LayoutParams!) |
|
LayoutParams(source: ViewGroup.MarginLayoutParams!) |
|
LayoutParams(source: RelativeLayout.LayoutParams!) Copy constructor. |
|
LayoutParams(w: Int, h: Int) |
Public methods | |
---|---|
open Unit |
Adds a layout rule to be interpreted by the RelativeLayout. |
open Unit |
Adds a layout rule to be interpreted by the RelativeLayout. |
open String! | |
open Int |
Returns the layout rule associated with a specific verb. |
open IntArray! |
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. |
open Unit |
removeRule(verb: Int) Removes a layout rule to be interpreted by the RelativeLayout. |
open Unit |
resolveLayoutDirection(layoutDirection: Int) This will be called by |
Inherited functions | |
---|---|
Properties | |
---|---|
Boolean |
When true, uses the parent as the anchor if the anchor doesn't exist or if the anchor's visibility is GONE. |
Inherited properties | |
---|---|
XML attributes
android:layout_above
android:layout_above
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignBaseline
android:layout_alignBaseline
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignBottom
android:layout_alignBottom
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignEnd
android:layout_alignEnd
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignLeft
android:layout_alignLeft
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignParentBottom
android:layout_alignParentBottom
May be a boolean value, such as "true
" or "false
".
android:layout_alignParentEnd
android:layout_alignParentEnd
May be a boolean value, such as "true
" or "false
".
android:layout_alignParentLeft
android:layout_alignParentLeft
May be a boolean value, such as "true
" or "false
".
android:layout_alignParentRight
android:layout_alignParentRight
May be a boolean value, such as "true
" or "false
".
android:layout_alignParentStart
android:layout_alignParentStart
May be a boolean value, such as "true
" or "false
".
android:layout_alignParentTop
android:layout_alignParentTop
May be a boolean value, such as "true
" or "false
".
android:layout_alignRight
android:layout_alignRight
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignStart
android:layout_alignStart
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignTop
android:layout_alignTop
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_alignWithParentIfMissing
android:layout_alignWithParentIfMissing
May be a boolean value, such as "true
" or "false
".
android:layout_below
android:layout_below
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_centerHorizontal
android:layout_centerHorizontal
May be a boolean value, such as "true
" or "false
".
android:layout_centerInParent
android:layout_centerInParent
May be a boolean value, such as "true
" or "false
".
android:layout_centerVertical
android:layout_centerVertical
May be a boolean value, such as "true
" or "false
".
android:layout_toEndOf
android:layout_toEndOf
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_toLeftOf
android:layout_toLeftOf
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_toRightOf
android:layout_toRightOf
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
android:layout_toStartOf
android:layout_toStartOf
May be a reference to another resource, in the form "@[+][package:]type/name
" or a theme attribute in the form "?[package:]type/name
".
Public constructors
LayoutParams
LayoutParams(source: RelativeLayout.LayoutParams!)
Copy constructor. Clones the width, height, margin values, and rules of the source.
Parameters | |
---|---|
source |
RelativeLayout.LayoutParams!: The layout params to copy from. |
Public methods
addRule
open fun addRule(verb: Int): Unit
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 |
addRule
open fun addRule(
verb: Int,
subject: Int
): Unit
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
getRule
open fun getRule(verb: Int): Int
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 |
Return | |
---|---|
Int |
the id of another view to use as an anchor, a boolean value (represented as RelativeLayout.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
getRules
open fun getRules(): IntArray!
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.
Return | |
---|---|
IntArray! |
the supported rules |
See Also
removeRule
open fun removeRule(verb: Int): Unit
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. |
See Also
resolveLayoutDirection
open fun resolveLayoutDirection(layoutDirection: Int): Unit
This will be called by android.view.View#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 View.LAYOUT_DIRECTION_LTR View.LAYOUT_DIRECTION_RTL |
Properties
alignWithParent
var alignWithParent: Boolean
When true, uses the parent as the anchor if the anchor doesn't exist or if the anchor's visibility is GONE.