四大组件
1.Activity(活动,页面)
必学
2.Service(服务)
选学
3.Broadcast(广播)、
必学
4.Content Provider(内容提供者)
不学
【Activity】
一、自定义Activity
1.AndroidManifest.xml 清单文件
2.单独写一个java文件
二、页面跳转
1. 显式跳转
显式跳转需要知道要跳转到的页面的包名和类名。
更多的用于一个app内部页面的跳转。
2. 隐式跳转
可以隐藏要跳转的包名和类名。
更多的用于跳转其他app的页面。
要给被跳转的页面,在清单文件中注册action节点
三. 跳转传值
四. 生命周期
onXXXXX 这样命名的方法都表示回调方法。
回调方法:在特定的时机自动触发调用的方法。
例如 onClick --> 特定时机为用户点击
onCreate -->
------页面开始加载------
D/MainActivity( 2639): onCreate
D/MainActivity( 2639): onStart
D/MainActivity( 2639): onResume
------页面前台显示------
------点击返回键--------
D/MainActivity( 2639): onPause
D/MainActivity( 2639): onStop
D/MainActivity( 2639): onDestroy
------页面销毁----------
------页面开始加载------
D/MainActivity( 2639): onCreate
D/MainActivity( 2639): onStart
D/MainActivity( 2639): onResume
------页面前台显示------
------点击Home键--------
D/MainActivity( 2639): onPause
D/MainActivity( 2639): onStop
------页面处于后台--------
------重新切换回去--------
D/MainActivity( 2639): onStart
D/MainActivity( 2639): onResume
------页面处于前台--------
------新的页面覆盖---------
D/MainActivity( 2639): onPause
D/MainActivity( 2639): onStop
------页面处于后台---------
关于各个回调方法的说明:
1. onCreate
表示当前页面示例(对象)创建
经常用于初始化,例如findViewById、注册等。
2. onStart
表示当前页面可见
3.onResume
表示当前页面完全获得屏幕焦点(完全处于前台)
通常紧接着onStart被调用,
适合执行页面从后台到前台后要恢复的代码。
4. onPause
与onResume对应,表示当前页面开始失去焦点。
适合完成一些轻量级的后台保存。
5. onStop
与onStart对应,表示完全处于后台。
适合完成重量级的后台保存。
5. onDestroy
与onCreate对应,表示实例准备销毁。
适合完成最终的回收和注销等工作。
Crash
原因:抛出异常
五、加载模式 LaunchMode
在清单文件中设置
1.标准模式
android:launchMode="standard"
每次启动都是一个新的实例
2.栈顶复用模式
android:launchMode="singleTop"
当要启动的页面恰好是当前栈顶页面时,不再产生新的实例。
3.栈内复用模式
android:launchMode="singleTask"
在当前任务栈中,要跳转的页面如果已经存在,无论是否处于
栈顶,都会重用(不产生新的实例)。
如果复用的实例其上方还有其他实例,那么弹出其他实例。
4.单例模式
android:launchMode="singleInstance"
单例模式单独一个栈,并且始终只有一个实例。
回退的时候都是先清空当前栈,如果还有其他栈再切换
ListView 滑动列表:
MVP
M Model 模型层
V View 视图层
P Presentor 表示层
1. 纯文字列表
ArrayAdapter
2. 自定义样式列表
SimpleAdapter
3. 优化列表
XXXX extends BaseAdapter