安卓学习-(view 方法汇总)

来源:互联网 发布:网络舆论引导的重要性 编辑:程序博客网 时间:2024/06/04 19:53
View类是所有可视化控件的基类,主要提供了控件绘制和事务处理的方法。
创建用户界面所使用的控件都继承自View,如EditText、TextView、Button等。
View及其子类的相关属性,既可以在布局XML文件中进行相关设置,也可以通过成员方法在Java代码中动态设置。
View类常用的属性及对应的方法
属性名称对应方法描述Android:backgroundsetBackgroundResource(int)设置背景android:clickablesetClickable(boolean)设置View是否响应单击事件android:visibilitysetVisibility(int)控制View的可见性android:focusablesetFocusable(boolean)控制View是否可以获取焦点android:idsetId(int)为View设置标识符,可通过findViewById方法获取android:longClickablesetLongClickable(boolean)设置View是否响应长单击事件android:soundEffectsEnabledsetSoundEffectsEnabled(boolean)设置当View触发单击等事件时是否播放音效android:saveEnabledsetSaveEnabled(boolean)如果未作设置,当View被冻结时将不会保存其状态android:nextFocusDownsetNextFocusDownId(int)定义当向下搜索时应该获取焦点的View,如果该View不存在或不可见,则会抛出RuntimeException异常android:nextFocusLeftsetNextFocusLeftId(int)定义当向左搜索时应该获取焦点的Viewandroid:nextFocusRightsetNextFocusRightId(int)定义当向右搜索时应该获取焦点的Viewandroid:nextFocusUpsetNextFocusUpId(int)定义当向上搜索时应该获取焦点的View


ViewGroup类是View类的子类,但是它可以充当其他控件的容器。
ViewGroup的子控件既可以是普通的View,也可以是ViewGroup。
一些高级控件如Gallery、GridView等都是继承自ViewGroup。
Android中为每种不同的布局提供一个ViewGroup的子类,
LinearLayout、TableLayout、RelativeLayout、FrameLayout、AbsoluteLayout等。
LinearLayout是最简单的布局之一,它提供了控件水平或垂直排列的模型,可以通过设置控件的weight参数控制各个控件在容器中的相对大小。
LinearLayout布局的属性也是既可以通过布局XML文件设置,也可以通过成员方法进行设置。
LinearLayout常用的属性及对应设置方法
属性名称对应方法描述android:orientationsetOrientation(int)设置线性布局的朝向,可取horizontal和vertical两种排列方式android:gravitysetGravity(int)设置线性布局的内部元素的布局方式
gravity可取的属性及说明
属性值说明top不改变控件大小,对齐到容器顶部bottom不改变控件大小,对齐到容器底部left不改变控件大小,对齐到容器左侧right不改变控件大小,对齐到容器右侧center_vertical不改变控件大小,对齐到容器纵向中央位置center_horizontal不改变控件大小,对齐到容器横向中央位置center不改变控件大小,对齐到容器中央位置fill_vertical若有可能,纵向拉伸以填满容器fill_horizontal若有可能,横向拉伸以填满容器fill若有可能,纵向横向同时拉伸填满容器

TableLayout类似行和列的形式管理控件,每行为一个TableRow对象,也可以为一个View对象,当为View对象时,该View对象将跨越该行的所有列。
在TableRow中可以添加子控件,每添加一个子控件为一列。
TableLayout布局中并不会为每一行、每一列或每个单元格绘制边框,每一行可以有0或多个单元格,每个单元格为一个View对象。
TableLayout中可以有空的单元格,单元格也可以像HTML中那样跨越多个列。
在表格布局中,一个列的宽度由该列中最宽的那个单元格指定,而表的宽度是由父容器指定的。

在TableLayout中,可以为列设置三种属性:
Shrinkable, 如果一个列被标识为Shrinkable,则该列的宽度可以进行收缩,以使表格能够适应其父容器的大小。
Stretchable,如果一个列被标识为Stretchable,则该列的宽度可以进行拉伸,以使填满表格中空闲的空间。
Collapsed,如果一个列被标识为Collapsed,则该列将会被隐藏。
一个列可以同时具有Shrinkable和Stretchable属性,在这种情况下,该列的宽度将任意的拉伸或收缩以适应父容器。
TableLayout继承自LinearLayout类,除了继承自父类的属性和方法,TableLayout类还包含表格布局所特有的属性和方法。
TableLayout类常用属性及对应的方法
属性名称对应方法描述android:collapseColumnssetColumnCollapsed(int,boolean)设置指定列号的列为Collapsed,列号从0开始计算android:shrinkColumnssetShrinkAllColumns(boolean)设置指定列号的列为Shrinkable,列号从0开始计算android:stretchColumnssetStretchAllColumns(boolean)设置指定列号的列为Stretchable,列号从0开始计算
RelativeLayout布局中,子控件的位置是相对于兄弟控件或父容器而决定的。
出于性能考虑,在设计相对布局时要按照控件之间的依赖关系排列,如View A 的位置相对于View B 类决定,则需要保证在布局文件中View B 在View A 的前面。
相对布局中只取true或false的属性
属性名称属性说明android:layout_centerHorizontal当前控件位于父控件的横向中间位置android:layout_centerVertical当前控件位于父控件的纵向中间位置android:layout_centerInParent当前控件位于父控件的中央位置android:layout_alignParentBottom当前控件低端与父控件低端对齐android:layout_alignParentLeft当前控件左侧与父控件左侧对齐android:layout_alignParentRight当前控件右侧与父控件右侧对齐android:layout_alignParentTop当前控件顶端与父控件顶端对齐android:layout_alignWithParentIfMissing当参照控件不存在或不可见时参照父控件
相对布局中取值为其他控件id的属性及说明
属性名称属性说明android:layout_toRightOf使当前控件位于给出id控件的右侧android:layout_toLeftOf使当前控件位于给出id控件的左侧android:layout_above使当前控件位于给出id控件的上方android:layout_below使当前控件位于给出id控件的下方android:layout_alignTop使当前控件的上边界与给出id控件的上边界对齐android:layout_alignBottom使当前控件的下边界与给出id控件的下边界对齐android:layout_alignLeft使当前控件的左边界与给出id控件的左边界对齐android:layout_alignRight使当前控件的右边界与给出id控件的右边界对齐
相对布局中取值为像素的属性及说明
属性名称属性说明android:layout_marginLeft当前控件的左侧的留白android:layout_marginRight当前控件的右侧的留白android:layout_marginTop当前控件的上方的留白android:layout_marginBottom当前控件的下方的留白





view 类的全属性
XML 属性相关方法说明android:alphasetAlpha(float)设置该组件的透明度android:backgroundsetBackgroundResource(int)设置该组件的背景颜色android:clickablesetClickable(boolean)设置该组件是否可以激发单击事件android:contentDescriptionsetContentDescription(CharSequence)设置该组件的主要描述信息android:drawingCacheQualitysetDrawingCacheQuality(iint)设置该组件所使用的绘制缓存的质量android:fadeScrollbarssetScrollbarFadingEnabled(boolean)当不使用该组件的滚动条时,是否淡出显示滚动条android:fadingEdgesetVerticalFadingEdgeEnabled(boolean)设置滚动该组件时组件边界是否使用淡出效果android:fadingEdgeLengthgetVerticalFadingEdgeLength()设置淡出边界的长度android:focusablesetFocusable(boolean)设置组件是否可以得到焦点android:focusableInTouchModesetFocusableInTouchMode(boolean)设置该组件在触摸模式下是否可以得到焦点android:idsetId(int)设置该组件的唯一标识。Java 代码中可以通过 findViewById 来获取它android:isScrollContainersetScrollContainer(boolean)设置该组件是否作为可滚动容器使用android:keepScreenOnsetKeepScreenOn(boolean)设置该组件是否会强制手机屏幕一直打开android:longClickablesetLongClickable(boolean)设置该组件是否可以响应长单击事件android:minHeightsetMinimumHeight(int)设置该组件的最小高度android:minWidthsetMinimumWidtht(int)设置该组件的最小宽度android:nextFocusDownSetNextFocusDownId(int)设置焦点在该组件上,且按向下键时获得焦点的组件 IDandroid:nextFocusLeftsetNextFocusLeftId(int)设置焦点在该组件上,且按向左键时获得焦点的组件 IDandroid:nextFocusRightsetNextFocusRightId(int)设置焦点在该组件上,且按向右键时获得焦点的组件 IDandroid:nextFocusUpsetNextFocusUpId(int)设置焦点在该组件上,且按向上键时获得焦点的组件 IDandroid:onClick 为该组件的单击事件绑定监听器android:paddingsetPadding(int,int,int,int)在组件的四边设置填充区域android:paddingLeftsetPadding(int,int,int,int)在组件的左边设置填充区域android:paddingTopsetPadding(int,int,int,int)在组件的上边设置填充区域android:paddingRightsetPadding(int,int,int,int)在组件的右边设置填充区域android:paddingBottomsetPadding(int,int,int,int)在组件的下边设置填充区域android:rotationsetRotation(float)设置该组件旋转的角度android:rotationXsetRotationX(float)设置该组件绕X 轴旋转的角度android:rotationYsetRotationY(float)设置该组件绕Y 轴旋转的角度android:saveEnabledsetSaveEnabled(boolean)如果设置为false ,那当该组件被冻结时不会保存它的状态android:scaleXsetScaleX(float)设置该组件在水平方向的缩放比android:scaleYsetScaleY(float)设置该组件在垂直方向的缩放比android:scrollX 该组件初始化后的水平滚动偏移android:scrollY 该组件初始化后的垂直滚动偏移android:scrollbarAlwaysDrawHorizontalTrack 设置该组件是否总是显示水平滚动条的轨迹android:scrollbarAlwaysDrawVerticalTrack 设置该组件是否总是显示垂直滚动条的轨迹android:scrollbarDefaultDelayBeforeFadesetScrollbarDefaultDelayBeforeFade(int)设置滚动条在淡出隐藏之前延迟多少毫秒android:scrollbarFadeDurationsetScrollbarFadeDuration(int)设置滚动条淡出隐藏过程需要多少秒android:scrollbarSizesetScrollbarSize(int)设置垂直滚动条的宽度和水平滚动条的高度android:scrollbarStylesetScrollbarStyle(int)设置滚动条的风格和位置。该属性支持如下属性:
insideOverlay
insideInset
OutsideOverlay
OutsideInsetandroid:scrollbarThumbHorizontal 设置该组件的水平滚动条的滑块对应的 Drawable对象android:scrollbarThumbVertical 设置该组件的垂直滚动条的滑块对应的 Drawable对象android:scrollbarTrackHorizontal 设置该组件的水平滚动条的轨道对应的 Drawable对象android:scrollbarTrackVertical 设置该组件的垂直滚动条的轨道对应的 Drawable对象android:scrollbars 定义该组件滚动时显示几个滚动条,该属性支持如下属性值。
none :不显示滚动条
horizont :显示水平滚动条
vertical :显示垂直滚动条android:soundEffectsEnabledsetSoundEffectsEnabled(boolean)设置该组件被单击时是否使用音效android:tag 为该组件设置一个字符串类型的tag 值。接下来可通过 View 的 getTag() 获取该字符串,或通过 findViewWithTag() 查找该组件android:transformPivotXsetPivotX(float)设置该组件旋转时旋转中心的 X 坐标android:transformPivotYsetPivotY(float)设置该组件旋转时旋转中心的 Y 坐标android:translationXsetTranslationX(float)设置该组件在X 方向上位移android:translationYsetTranslationY(float)设置该组件在Y 方向上位移android:visilibitysetVisibility(int)设置该组件是否可见

原创粉丝点击