API 25 (Android 7.1.1 API) widget.FrameLayout

来源:互联网 发布:营销活动数据分析报告 编辑:程序博客网 时间:2024/04/30 20:20

Android API 25 (Android 7.1.1 API)


FrameLayout

public class FrameLayout

extends ViewGroup

Added in API level 1

 

java.lang.Object

   ↳android.view.View

    ↳android.view.ViewGroup

     ↳android.widget.FrameLayout

 

已知直接子类:

AppWidgetHostView

BaseCardView

BottomNavigationView

BrowseFrameLayout

CalendarView

CardView

CollapsingToolbarLayout

DatePicker

GestureOverlayView

HorizontalScrollView

MediaController

NavigationView

NestedScrollView

PercentFrameLayout

Picker

ScrollView

SearchOrbView

ShadowOverlayContainer

TabHost

TimePicker

TitleView

ViewAnimator

 

【概述】

FrameLayout设计用于屏蔽屏幕上的一个区域以显示单个项目。 通常,FrameLayout应该用于保存单个子视图,因为可能难以以可扩展到不同屏幕尺寸的方式组织子视图,而不会使子节点相互重叠。 然而,你可以添加多个孩子到FrameLayout,并通过使用androidlayout_gravity属性为每个孩子分配重力来控制它们在FrameLayout中的位置。

 

子视图在堆栈中绘制,最近添加的子节点在顶部。 FrameLayout的大小是它最大的孩子的大小(加上填充),可见或不可见(如果FrameLayout的父允许)。 仅当setConsiderGoneChildrenWhenMeasuring()设置为true时,才使用GONE的视图进行大小调整。

 

【嵌套类】

FrameLayout.LayoutParamsFrameLayout相关联的子项的布局信息

 

FrameLayout.LayoutParams

android:  layout_gravity

API 1

属性说明:表示组件自身在父组件中的位置默认值left

可以是以下一个或多个(用|分隔)常量:

top               将对象推送到其容器的顶部,而不更改其大小。

bottom            将对象推送到其容器的底部,而不更改其大小。

left              将对象推送到其容器的左侧,而不更改其大小。

right             将对象推送到其容器的右侧,而不更改其大小。

center            将对象放置在其容器的垂直和水平轴的中心,而不改变其大小。

center_vertical   将对象放置在其容器的垂直中心,而不改变其大小。

centet_horizontal 将对象放置在其容器的水平中心,而不改变其大小。

Fill              如果需要,增大对象的水平和垂直尺寸,以便它完全填充其容器。

fill_vertical     如果需要,增大对象的垂直尺寸,以便它完全填充其容器。

fill_horizontal   如果需要,增大对象的水平尺寸,以便它完全填充其容器。

clip_vertical     附加的可选设置,它可以设置容器内子对象的上下边缘裁剪它的容器边框。裁剪会基于垂直对齐的方式:顶部对齐的会裁剪底部边缘,底部对齐的会裁剪顶部边缘,不会上下边缘都裁剪。

clip_horizontal   附加的可选设置,它可以设置容器内子对象的左右边缘裁剪它的容器边框。裁剪会基于水平对齐的方式:左对齐的会裁剪右边缘,右对齐的会裁剪左边缘,不会左右边缘都裁剪。

start           将对象推送到其容器的起始处,而不更改其大小。

end             将对象推送到其容器的结尾处,而不更改其大小。

对应的全局属性资源符号是layout_gravity

 

FrameLayout.LayoutParams

继承自view.ViewGroup.MarginLayoutParamsxml属性

继承自view.ViewGroup.LoutParamsXML属性

 

【XML属性】

android:  foregroundGravity

API 1

关联方法:setForegroundGravity(int gravity)

属性说明:定义应用于前景drawablegravity。默认为fill

必须是下列常量值的一个或多个(用|分隔):

top               将对象推送到其容器的顶部,而不更改其大小。

bottom            将对象推送到其容器的底部,而不更改其大小。

left              将对象推送到其容器的左侧,而不更改其大小。

right             将对象推送到其容器的右侧,而不更改其大小。

center            将对象放置在其容器的垂直和水平轴的中心,而不改变其大小。

center_vertical   将对象放置在其容器的垂直中心,而不改变其大小。

centet_horizontal 将对象放置在其容器的水平中心,而不改变其大小。

Fill              如果需要,增大对象的水平和垂直尺寸,以便它完全填充其容器。

fill_vertical     如果需要,增大对象的垂直尺寸,以便它完全填充其容器。

fill_horizontal   如果需要,增大对象的水平尺寸,以便它完全填充其容器。

clip_vertical     附加的可选设置,它可以设置容器内子对象的上下边缘裁剪它的容器边框。裁剪会基于垂直对齐的方式:顶部对齐的会裁剪底部边缘,底部对齐的会裁剪顶部边缘,不会上下边缘都裁剪。

clip_horizontal   附加的可选设置,它可以设置容器内子对象的左右边缘裁剪它的容器边框。裁剪会基于水平对齐的方式:左对齐的会裁剪右边缘,右对齐的会裁剪左边缘,不会左右边缘都裁剪。

对应的全局属性资源符号是foregroundGravity

 

view.View中一样...

 

 

 

android:  measureAllChildren

API 1

关联方法:setMeasureAllChildren(boolean measureAll)

属性说明:确定在测量时是否考虑所有子元素,或只是处于VISIBLE”或“INVISIBLE”状态的子元素。默认为false

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

也可以引用一个包含此类型值的资源格式:@[package:]type:name或主题属性(格式:?[package][type:]name)。

对应的全局属性资源符号是measureAllChildren

 

【继承自view.ViewGroup的XML属性】

跳转view.ViewGroup

 

【继承自view.View的XML属性】

跳转view.View

 

【公共方法】

public FrameLayout.LayoutParams  generateLayoutParams (AttributeSet attrs)

Added in API level 1

根据提供的属性集返回一组新的布局参数。

 

public CharSequence  getAccessibilityClassName () 

Added in API level 23

返回此对象的类名以用于辅助功能。子类只能覆盖这个,如果他们实现的东西,应该被视为一个完全新的类的视图使用时的可访问性,与其派生的类无关。这用于填充AccessibilityNodeInfo.setClassName

 

public boolean  getConsiderGoneChildrenWhenMeasuring ()

Added in API level 1deprecated in API level 14

public boolean  getMeasureAllChildren()

Added in API level 14

确定在测量时是否考虑所有子元素,或只是处于VISIBLE”或“INVISIBLE”状态的子元素。

public void  setMeasureAllChildren (boolean measureAll) 

Added in API level 1

设置在测量时是否考虑所有子元素,或只是处于VISIBLE”或“INVISIBLE”状态的子元素。

 

public void  setForegroundGravity (int foregroundGravity)

描述前景如何定位。默认为STARTTOP

 

public boolean  shouldDelayChildPressedState () 

Added in API level 14

如果按下的状态应该延迟此ViewGroup的子代或后代,则返回true。 通常,应该对可以滚动的容器(例如列表)执行此操作。 这防止当用户实际上试图滚动内容时出现按下状态。 出于兼容性原因,默认实现返回true。 不滚动的子类通常会覆盖此方法并返回false

 

0 0
原创粉丝点击