View类常用属性及方法
来源:互联网 发布:淘宝企业店铺登陆 编辑:程序博客网 时间:2024/06/04 19:40
View类是所有可视化控件的基类,主要提供了控件绘制和事务处理的方法。创建用户界面所使用的控件都继承自View,如EditText、TextView、Button等。View及其子类的相关属性,既可以在布局XML文件中进行相关设置,也可以通过成员方法在Java代码中动态设置。
View类常用的属性及对应的方法
属性名称
对应方法
描述
android:background
setBackgroundResource(int)
设置背景
android:clickable
setClickable(boolean)
设置View是否响应单击事件
android:visibility
setVisibility(int)
控制View的可见性
android:focusable
setFocusable(boolean)
控制View是否可以获取焦点
android:id
setId(int)
为View设置标识符,可通过findViewById方法获取
android:longClickable
setLongClickable(boolean)
设置View是否响应长单击事件
android:soundEffectsEnabled
setSoundEffectsEnabled(boolean)
设置当View触发单击等事件时是否播放音效
android:saveEnabled
setSaveEnabled(boolean)
如果未作设置,当View被冻结时将不会保存其状态
android:nextFocusDown
setNextFocusDownId(int)
定义当向下搜索时应该获取焦点的View,如果该View不存在或不可见,则会抛出RuntimeException异常
android:nextFocusLeft
setNextFocusLeftId(int)
定义当向左搜索时应该获取焦点的View
android:nextFocusRight
setNextFocusRightId(int)
定义当向右搜索时应该获取焦点的View
android:nextFocusUp
setNextFocusUpId(int)
定义当向上搜索时应该获取焦点的View
ViewGroup类是View类的子类,但是它可以充当其他控件的容器。ViewGroup的子控件既可以是普通的View,也可以是ViewGroup。一些高级控件如Gallery、GridView等都是继承自ViewGroup。Android中为每种不同的布局提供一个ViewGroup的子类,如LinearLayout、TableLayout、RelativeLayout、FrameLayout、AbsoluteLayout等。
LinearLayout是最简单的布局之一,它提供了控件水平或垂直排列的模型,可以通过设置控件的weight参数控制各个控件在容器中的相对大小。LinearLayout布局的属性也是既可以通过布局XML文件设置,也可以通过成员方法进行设置。
LinearLayout常用的属性及对应设置方法
属性名称
对应方法
描述
android:orientation
setOrientation(int)
设置线性布局的朝向,可取horizontal和vertical两种排列方式
android:gravity
setGravity(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:collapseColumns
setColumnCollapsed(int,boolean)
设置指定列号的列为Collapsed,列号从0开始计算
android:shrinkColumns
setShrinkAllColumns(boolean)
设置指定列号的列为Shrinkable,列号从0开始计算
android:stretchColumns
setStretchAllColumns(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类常用属性及方法
- Android View类属性及方法
- SerialPort类的常用属性及方法
- SerialPort类的常用属性及方法
- View 的属性及系统常用权限
- View类的XML属性、相关方法及说明
- view类的xml属性、相关方法及说明
- View类的XML属性、相关方法及说明
- View类的XML属性及相关方法
- View类的XML属性、相关方法及说明
- View类的XML属性、相关方法及说明
- View类常用XML属性
- String常用方法及属性
- UITextField 常用属性及方法
- View类xml属性、方法
- 自定义view常用属性
- window对象的常用属性及方法
- Server对象的常用属性及方法
- 开源网站搜集
- GCD并发的执行顺序
- ORACLE自治事物,提交与回滚以及一些查询插入效率问题
- POJ 1584--A Round Peg in a Ground Hole
- 建了个QQ群 有问题可i以一起讨论
- View类常用属性及方法
- 硅谷创业教父保罗·格雷厄姆给小白的创业建议书
- PbModel(背景建模)
- NLP之路-一点小语言工具函数
- 利用POI操作不同版本word文档中的图片以及创建word文档
- HDU 2546- 饭卡(01背包)
- C# 中的委托和事件
- Android Socket Example
- 黑马程序员----判断一个字符串是否是对称字符串