基础控件
尺寸单位
- px:像素
dp/dip:设备独立像素,相对单位,一般尺寸用sp:比例独立像素,相对单位,一般文字用
UI控件分类
- widget控件:UI的最基本单位,不能在这些组件中放入其他UI组件,如Button、TextView、EditText等
- layout组件:布局组件,可包含其他UI组件,如LinearLayout、ConstraintLayout、RelativeLayout、FrameLayout等
View
所有UI视图控件的父类,表示屏幕上的一块空白区域。
View定义了以下属性,为所有UI控件共有:
| xml属性 | 说明 |
|---|---|
| android:id | 组件标识符,值为@+id/值 |
| android:backgroud | 组件背景,可以是颜色或图片 |
| android:visibility | 组件可见性 |
| android:layout_height | 组件高度 |
| android:layout_width | 组件宽度 |
TextView 文本标签
显示文本信息,提供了以下属性:
text:文本内容textColor字体颜色textSize:字体大小textStyle:字体风格gravity:文本对齐方式
以上所有属性都可以在java中用set方法设置
ImageView 图片标签
只显示图片,图片必须放在资源文件夹res/drawable中,通过src属性设置
Button
按钮,TextView的子类,有额外的事件处理,可以部分显示图片。有以下常用属性:
drawableTop:图片在文字上(下左右)方,值为图片资源的路径
自定义按钮样式:向应用添加按钮 | Views | Android Developers
可以在按钮四周显示图片。
| 属性 | 取值 | 说明 |
|---|---|---|
| android:drawableTop | @drawable/XXX | 图片显示在文字的上边 |
| android:drawableBottom | @drawable/XXX | 图片显示在文字的下边 |
| android:drawableLeft | @drawable/XXX | 图片显示在文字的左边 |
| android:drawableRight | @drawable/XXX | 图片显示在文字的右边 |
ImageButton
图片按钮,Image的子类。类似Button但不能显示文字
ImageButton中src和background的区别:
- src表示图片源,相当于是前景色,显示在最前方,会覆盖背景,往往是居中显示,而background表示背景,显示的是整个控件所能看到的范围。
- 当引用的图片小于控件的大小时,用src引用的图片将会原图显示,不改变图片的大小;而用background引用的图片会按照控件的大小放大图片。
EditText 文本编辑框
用于输入信息,TextView的子类,可以输入单行或多行文本,默认为单行。
editable:是否可以编辑,布尔值inputType:输入字符类型,text/number/TextPassword/NumberPassword/phone等,可以用|连接多个取值。密码类型会有特殊显示显示。hint:文本编辑框的提示语,显示在输入框内部
CompoundButton
复合按钮,继承自Button。
CheckBox 复选按钮
CompoundButton的子类,显示为一个方框图标和说明性文字的集合,用户可以通过触摸点按改变选中状态。
提供以下常用属性:
checked:选中状态,布尔值,默认为false。
在java中修改选中状态:
- 调用set方法:
-
调用状态反转方法:
```java
cb.toggle();
RadioButton 单选框
CompoundButton的子类,显示为一个圆形图标和说明性文字的集合,用户可以通过触摸点按改变选中状态,和CheckBox一致。
使用时,多个单选按钮放在同一组中,这个组的标签是RadioGroup,其中的标签具有排他性。
属性和调用属性的方法和Checkbox相同。
Toast
简易消息提示框,没有焦点,显示一定时间后消失。
位于android.widget.Toast包。
Toast.makeText():创建,返回一个Toast对象。- context:上下文对象,用
getApplicationContext()获取 - string:要展示的字符串
- int:显示时长,
Toast.LENGTH_SHORT和Toast.LENGTH_Long。
- context:上下文对象,用
toast.show():展示
TextClock 文本时钟
API版本>=17
-
android:format12Hour:设置为12小时制
android:format24Hour:设置为24小时制
Spinner 下拉列表框
事件监听:Adapter.OnItenSelectedLitener
事件处理:onSelect
属性:
spinnerMode列表框模式,默认dropdown(下拉菜单),可选dialog(弹出新的模态框)entries:列表项数组资源dropDownWidth:dropdown模式下可以设置下拉选项列表的宽度(不是没有展开下拉框选项的时候的宽度prompt:dialog模式下可以设置提示信息,只能引用string.xml中的字符串,不能直接写字符串