(二)安卓基础知识
二、Android用户界面基础
1.安卓四大基本组件
所有android应用都是有Activity BroadcastReceiver Service ContentProvider组成的
1.1 活动Activity
Activity是最基本的Android应用程序组件,Activity类会提供视图控制组件的用户接口,并对事件作出响应
1.2 广播消息接收器
BroadcastReceiver时Android系统中常用的一种机制,用户让应用对一个外部的事件作出响应。
1.3 Service 服务
一个服务是具有一个较长生命周期且没有用户界面的程序
1.4 内容提供者 ContentProvider
应用程序能够将它们的数据保存到文件、SQLite数据库中,甚至时任何有效的设备中,当需要将当前应用数据与其他应用共享时,ContentProvider类实现了一组标准方法,从而能够让其他的应用保存或读取此ContentProvider出来的各种数据类型
2 用户界面的工作机制
2.1 用户界面简介
在Android应用中,应用每个界面对应一个Activity,没个Activity由有个布局来决定如何显示,这就是UI
UI是人机之间传递、交换信息的接口;它实现了信息内部形式与用户可接受形式之间的转换。UI负责捕获用户动作,在程序中处理动作,UI负责显示数据给用户。
2.2 android中UI工作机制
2.2.1 android用户界面采用MVC框架来接收用户动作、显示UI界面与处理数据等工。
控制器:处理用户数据
控制器负责接受用户动作请求,调用指定模型处理用户请求,响应用户结果,控制器的责任由Activity承担,(Activity不应承担过多业务逻辑(应交给模型层))。
视图:显示用户界面,与用户交互
视图层主要负责用户界面(UI)的设计(页面布局XML文件等),在Android中使用XML布局文件实现视图层和模型层的分离。
模型:数据模型
模型层负责对数据的操作面对网络服务等的操作
数据库/文件操作、ContentProvider、网络访问等等充当模型层
2.2.2 android MVC 整合
Android视图层与控制器层、模型层的整合
在Activity文件,使用setContentView( )方法,确定当前Activity如何显示。
2.2.3安卓中视图层的使用
2.2.3.1 视图层采用视图树模型:
2.2.3.2 试图树:由View控件或ViewGroup构成组成的
2.2.4 安卓视图层简介
2.2.4.1 View控件是界面的最基本的可视单元,是安卓视图界面的基类 例如TextView、EditText
2.2.4.2 ViewGroup是由其它View或ViewGroup组成的显示单元,继承字View类
ViewGroup功能:提供了一种布局方法,可以按照该布局定制视图的外观和顺序 LinerLayout、FrameLayout
2.2.4.3 创建布局的三种方法:
1.使用可视化编辑方式,创建用户视图界面(最简单)
2.使用XML代码方式,(最常用,但是只能创建静态页面)
3.使用java代码方式(最灵活,但是复杂度大)
视图控件的常用公有布局:
android:background 图片资源或颜色值 控件的背景
android:id @+id/字符串 控件的标识符
android:layout_width
android:layout_height match_parent wrap_content
android:layout_gravity
android:layout_margin
android:padding
2.2.5 常用View
TextView EditText
gravity 内文本对齐方式
hint eidtText默认显示的提示文本
inputType EditText的输入类型(格式)
ellipsize 如果TextView内文本太长了可以设置中间文本用省略号取代
autoLink 取值email、phone等,给文本中的email或者电话增加链接
RadioButton 单选按钮,用户只能在一组单选按钮中选择一个;使用时需要借助RadioGroup一起使用
CheckBox多选框
orientation RadioGroup的属性,设置内部的RadioButton的排列方式
checked RadioButton或者CheckBox的属性,设置此项时否为选中状态
Button 按钮
ImageButtom 图片按钮
ToggleButton 切换按钮
src ImageButton的属性,设置背景图
checked ToggleButton的属性,设置是否为选中状态
textOn ToggleButton的属性,当选中状态时显示的文本
textOff ToggleButton的属性当处于未被选中状态时显示的文本
2.2.6 常见的事件监听器
事件的处理步骤为:
事件源上触发一个事件,比如用户按下鼠标、按下按钮等
系统会自动产生对应的事件对象EventObject,并通知所有授权的事件监听者。
事件监听者中由对应的事件处理方法来处理该事件
2.2.6.1 为视图控件绑定事件监听器的步骤
获得视图控件对象
设置事件监听类型
绑定事件监听器
TextView控件
Click、LongClick、Touch、CreateContext、FocusChange、Key、……二、Android用户界面基础
1.安卓四大基本组件
所有android应用都是有Activity BroadcastReceiver Service ContentProvider组成的
1.1 活动Activity
Activity是最基本的Android应用程序组件,Activity类会提供视图控制组件的用户接口,并对事件作出响应
1.2 广播消息接收器
BroadcastReceiver时Android系统中常用的一种机制,用户让应用对一个外部的事件作出响应。
1.3 Service 服务
一个服务是具有一个较长生命周期且没有用户界面的程序
1.4 内容提供者 ContentProvider
应用程序能够将它们的数据保存到文件、SQLite数据库中,甚至时任何有效的设备中,当需要将当前应用数据与其他应用共享时,ContentProvider类实现了一组标准方法,从而能够让其他的应用保存或读取此ContentProvider出来的各种数据类型
2 用户界面的工作机制
2.1 用户界面简介
在Android应用中,应用每个界面对应一个Activity,没个Activity由有个布局来决定如何显示,这就是UI
UI是人机之间传递、交换信息的接口;它实现了信息内部形式与用户可接受形式之间的转换。UI负责捕获用户动作,在程序中处理动作,UI负责显示数据给用户。
2.2 android中UI工作机制
2.2.1 android用户界面采用MVC框架来接收用户动作、显示UI界面与处理数据等工。
控制器:处理用户数据
控制器负责接受用户动作请求,调用指定模型处理用户请求,响应用户结果,控制器的责任由Activity承担,(Activity不应承担过多业务逻辑(应交给模型层))。
视图:显示用户界面,与用户交互
视图层主要负责用户界面(UI)的设计(页面布局XML文件等),在Android中使用XML布局文件实现视图层和模型层的分离。
模型:数据模型
模型层负责对数据的操作面对网络服务等的操作
数据库/文件操作、ContentProvider、网络访问等等充当模型层
2.2.2 android MVC 整合
Android视图层与控制器层、模型层的整合
在Activity文件,使用setContentView( )方法,确定当前Activity如何显示。
2.2.3安卓中视图层的使用
2.2.3.1 视图层采用视图树模型:
2.2.3.2 试图树:由View控件或ViewGroup构成组成的
2.2.4 安卓视图层简介
2.2.4.1 View控件是界面的最基本的可视单元,是安卓视图界面的基类 例如TextView、EditText
2.2.4.2 ViewGroup是由其它View或ViewGroup组成的显示单元,继承字View类
ViewGroup功能:提供了一种布局方法,可以按照该布局定制视图的外观和顺序 LinerLayout、FrameLayout
2.2.4.3 创建布局的三种方法:
1.使用可视化编辑方式,创建用户视图界面(最简单)
2.使用XML代码方式,(最常用,但是只能创建静态页面)
3.使用java代码方式(最灵活,但是复杂度大)
视图控件的常用公有布局:
android:background 图片资源或颜色值 控件的背景
android:id @+id/字符串 控件的标识符
android:layout_width
android:layout_height match_parent wrap_content
android:layout_gravity
android:layout_margin
android:padding
2.2.5 常用View
TextView EditText
gravity 内文本对齐方式
hint eidtText默认显示的提示文本
inputType EditText的输入类型(格式)
ellipsize 如果TextView内文本太长了可以设置中间文本用省略号取代
autoLink 取值email、phone等,给文本中的email或者电话增加链接
RadioButton 单选按钮,用户只能在一组单选按钮中选择一个;使用时需要借助RadioGroup一起使用
CheckBox多选框
orientation RadioGroup的属性,设置内部的RadioButton的排列方式
checked RadioButton或者CheckBox的属性,设置此项时否为选中状态
Button 按钮
ImageButtom 图片按钮
ToggleButton 切换按钮
src ImageButton的属性,设置背景图
checked ToggleButton的属性,设置是否为选中状态
textOn ToggleButton的属性,当选中状态时显示的文本
textOff ToggleButton的属性当处于未被选中状态时显示的文本
2.2.6 常见的事件监听器
事件的处理步骤为:
事件源上触发一个事件,比如用户按下鼠标、按下按钮等
系统会自动产生对应的事件对象EventObject,并通知所有授权的事件监听者。
事件监听者中由对应的事件处理方法来处理该事件
2.2.6.1 为视图控件绑定事件监听器的步骤
获得视图控件对象
设置事件监听类型
绑定事件监听器
TextView控件
Click、LongClick、Touch、CreateContext、FocusChange、Key、……