Most visited

Recently visited

Added in API level 1

RelativeLayout.LayoutParams

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


与RelativeLayout相关联的每个孩子的布局信息。

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

From class android.view.ViewGroup.MarginLayoutParams
From class android.view.ViewGroup.LayoutParams

Inherited constants

From class android.view.ViewGroup.LayoutParams

Fields

public boolean alignWithParent

当为true时,如果该锚点不存在或锚点的可见性为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)

复制构造函数。

Public methods

void addRule(int verb, int subject)

添加要由RelativeLayout解释的布局规则。

void addRule(int verb)

添加要由RelativeLayout解释的布局规则。

String debug(String output)

返回此组布局参数的字符串表示形式。

int getRule(int verb)

返回与特定动词关联的布局规则。

int[] getRules()

检索所有受支持规则的完整列表,其中索引是规则谓词,元素值是指定的值;如果未设置,则检索“false”。

void removeRule(int verb)

删除由RelativeLayout解释的布局规则。

void resolveLayoutDirection(int layoutDirection)

这将由 requestLayout()以解决与布局方向相关的布局参数。

Inherited methods

From class android.view.ViewGroup.MarginLayoutParams
From class android.view.ViewGroup.LayoutParams
From class java.lang.Object

XML attributes

android:layout_above

将此视图的底部边缘定位在给定锚点视图ID上方。 容纳此视图的底部边距和锚点视图的顶部边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_above

android:layout_alignBaseline

将此视图的基线定位到给定锚点视图ID的基线上。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignBaseline

android:layout_alignBottom

使该视图的底部边缘与给定锚点视图ID的底部边缘相匹配。 容纳底部边缘。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignBottom

android:layout_alignEnd

使此视图的结束边缘与给定的锚点视图ID的结束边缘相匹配。 适应末端利润。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignEnd

android:layout_alignLeft

使此视图的左边缘与给定锚点视图ID的左边缘匹配。 容纳左边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignLeft

android:layout_alignParentBottom

如果为true,则使该视图的底部边缘与父项的底部边缘匹配。 容纳底部边缘。

必须是布尔值,可以是“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignParentBottom

android:layout_alignParentEnd

如果为true,则使该视图的结束边与父项的结束边相匹配。 适应末端利润。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(格式为“ @[package:]type:name ”)或主题属性(格式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignParentEnd

android:layout_alignParentLeft

如果为true,则使该视图的左边缘与父项的左边缘匹配。 容纳左边距。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignParentLeft

android:layout_alignParentRight

如果为true,则使该视图的右边缘与父项的右边缘匹配。 容纳右边距。

必须是布尔值,可以是“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignParentRight

android:layout_alignParentStart

如果为true,则使该视图的起始边缘与父项的起始边缘匹配。 容纳开始保证金。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignParentStart

android:layout_alignParentTop

如果为true,则使该视图的顶部边缘与父级的顶部边缘匹配。 容纳顶部边缘。

必须是布尔值,即“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignParentTop

android:layout_alignRight

使此视图的右边缘与给定锚点视图ID的右边缘匹配。 容纳右边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignRight

android:layout_alignStart

使此视图的起始边缘与给定锚点视图ID的起始边缘相匹配。 容纳开始保证金。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignStart

android:layout_alignTop

使此视图的顶部边缘与给定锚点视图ID的顶部边缘匹配。 容纳顶部边缘。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_alignTop

android:layout_alignWithParentIfMissing

如果设置为true,则当找不到对于layout_toLeftOf,layout_toRightOf等的锚点时,父级将用作锚点。

必须是布尔值,可以是“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_alignWithParentIfMissing

android:layout_below

将此视图的顶部边缘放置在给定锚点视图ID下方。 容纳此视图的顶部边距和锚点视图的底部边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_below

android:layout_centerHorizontal

如果为true,则将此孩子水平居中在其父代中。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_centerHorizontal

android:layout_centerInParent

如果为true,则将此孩子在其父代中水平和垂直居中。

必须是布尔值,可以是“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_centerInParent

android:layout_centerVertical

如果为true,则将此孩子垂直居中在其父代中。

必须是布尔值,可以是“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 layout_centerVertical

android:layout_toEndOf

将此视图的起始边缘定位到给定锚点视图ID的结尾处。 容纳此视图的起始页边距并结束锚视图的边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_toEndOf

android:layout_toLeftOf

将此视图的右边缘定位到给定锚点视图ID的左侧。 容纳此视图的右边距并留下锚点视图的边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_toLeftOf

android:layout_toRightOf

将此视图的左边缘定位到给定锚点视图ID的右侧。 容纳此视图的左边界和锚点视图的右边界。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_toRightOf

android:layout_toStartOf

将此视图的结束边缘定位到给定锚点视图ID的开始位置。 适应此视图的结束边界并启动锚视图的边距。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 layout_toStartOf

Fields

alignWithParent

Added in API level 1
boolean alignWithParent

当为true时,如果该锚点不存在或锚点的可见性为GONE,则使用父类作为锚点。

Public constructors

RelativeLayout.LayoutParams

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

Parameters
c Context
attrs AttributeSet

RelativeLayout.LayoutParams

Added in API level 1
RelativeLayout.LayoutParams (int w, 
                int h)

Parameters
w int
h int

RelativeLayout.LayoutParams

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

Parameters
source ViewGroup.LayoutParams

RelativeLayout.LayoutParams

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

Parameters
source ViewGroup.MarginLayoutParams

RelativeLayout.LayoutParams

Added in API level 19
RelativeLayout.LayoutParams (RelativeLayout.LayoutParams source)

复制构造函数。 克隆源的宽度,高度,边距值和规则。

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

Public methods

addRule

Added in API level 1
void addRule (int verb, 
                int subject)

添加要由RelativeLayout解释的布局规则。

用于引用兄弟(例如 ALIGN_RIGHT )的动词或采用布尔值(例如 CENTER_IN_PARENT )。

如果规则与布局方向有关(例如 START_OF ),则在用绝对规则调用 getRule(int)之前,必须使用 resolveLayoutDirection(int)解析布局方向(例如, 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)

也可以看看:

addRule

Added in API level 1
void addRule (int verb)

添加要由RelativeLayout解释的布局规则。

此方法只应用于不涉及兄弟(例如, ALIGN_RIGHT )的动词或采用布尔值( TRUE为true或0为false)。 要指定带有主题的动词,请使用addRule(int, int)

如果规则是相对于布局方向(例如: ALIGN_PARENT_START ),则布局方向必须使用解决 resolveLayoutDirection(int)致电前 getRule(int)绝对的规则(例如: ALIGN_PARENT_LEFT

Parameters
verb int: a layout verb, such as ALIGN_PARENT_LEFT

也可以看看:

debug

Added in API level 1
String debug (String output)

返回此组布局参数的字符串表示形式。

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 }"

getRule

Added in API level 23
int getRule (int 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)

也可以看看:

getRules

Added in API level 1
int[] getRules ()

检索所有受支持规则的完整列表,其中索引是规则谓词,元素值是指定的值;如果未设置,则检索“false”。 将不会解决相关规则。

Returns
int[] the supported rules

也可以看看:

removeRule

Added in API level 17
void removeRule (int verb)

删除由RelativeLayout解释的布局规则。

如果规则是相对于布局方向(例如: START_OFALIGN_PARENT_START ,等等),则布局方向必须使用解决 resolveLayoutDirection(int)前致电前 getRule(int)具有绝对的规则(例如: LEFT_OF

Parameters
verb int: One of the verbs defined by RelativeLayout, such as ALIGN_WITH_PARENT_LEFT.

也可以看看:

resolveLayoutDirection

Added in API level 17
void resolveLayoutDirection (int layoutDirection)

这将由 requestLayout()以解决与布局方向相关的布局参数。

在调用此方法后,以前通过 addRule(int)添加的与布局相关的动词(例如 START_OF )的任何规则只能通过其解析的绝对动词(例如 LEFT_OF )进行访问。

Parameters
layoutDirection int: the direction of the layout LAYOUT_DIRECTION_LTR LAYOUT_DIRECTION_RTL

Hooray!