Android 开发(吸收整理)(一)
第一章:四大组件
- 四大组件
*Activity:UI加载,跳转
- 生命周期
onCreate()>onStart()>onResume()>onPause()>onStop()>onDestroy()>onRestart(); - 构成
Activity对象+(Window类+DecorView[顶级视图])+xml布局文件 - 4种启动模式(栈管理)
*standard(标准启动模式):默认,新实例
*singTop:栈顶重用,onNewIntent()
*singTask:栈唯一,重用,onNewIntent()
*singInstance:单开,系统唯一,重用,onNewIntent()[传递Intent] - Fragment(v3.0+,android-support-v4.jar+)
大屏,多个页面嵌入一个Activity
*Service:后台执行任务
默认UI线程, - 普通Service:onCreate(),onStartCommand()&onDestory(),
注册
startService(),stopService()/stopSelf(),一个实例 - IntentService:执行短期耗时任务,完会调用stopSelf自我销毁,执行于子线程,覆写onHandleIntent()
- 运行在前台的Service:显示通知栏,不被回收,保持运行。starForeground()
- AIDL(Android接口描述语言):进程间通信,
[code]
*ContentProvider:存储,共享数据
1.SQLiteOpenHelper
[code]
*Broadcast:各组件,应用之间通信 - Broadcast,BroadcastReceiver,Intent
*普通广播:sendBroadcast(),所有应用,无序
*有序广播:sendOrderedBroadcast()
*本地广播:LocalBroadcastManager,进程内
*stickey广播:sendStickyBroadcast(),一直滞留,匹配,removeStickyBroadcast()
- 生命周期
第二章:View&动画
- ListView&GridView, Adapter,观察者模式
- RecyckerView 扩展布局
- ViewPager,
- 自定义View
- Canvas&Paint(eg.显示图片,计算宽高)
- 自定义ViewGroup
[code] - Scroller:startScroll,getCurX(),getCurY(),scrollTo,(下拉刷新例子)
动画
*帧动画(eg.xml定义,java代码实现)
*补间动画
*属性动画(3.0+)
*VectorDrawable(5.0+)
参考:
Android 开发进阶从小工到专家@何红辉
1. (强调是一本有深度的书)(理念相符合)(部分讲解,抛砖引玉)