这是我参与「第四届青训营 」笔记创作活动的第9天
认知方法
What -> Why -> How
- What:即先对一件事物有个大致的了解,明白它是什么。
- Why:然后去思考为什么要使用或者学习这个事物,即明白这件事物的意义,它会有着什么样的作用。
- How:接着我们来学习如何使用或者运用这个事物,即实践的过程。
开发者视角
站在开发者的视角来看:
- What对应代码+资源,即开发者平常会经常用到的就是代码和资源。
- Why对应赚钱+热爱,即我们为什么要用到代码和资源,一方面是为了谋生赚钱,另一方面是去做自己真正热爱的事情,虽然做不了改变世界那么大,但能为一部分人带来便利也是件很有成就感的事。
- How对应知识+经验,即我们要怎么去写代码、怎么获取资源,一方面我们汲取大量的知识,来为代码质量提供保障,另一方面我们要学会使用工作或学习中的经验,来帮助我们更快的写出好代码等。
用户视角
站在用户的视角来看:
- What对应界面、互动、记忆等,即用户对一个产品的基本认知。
- Why对应工具、视频、游戏等,即用户选择一个产品的理由。
- How对应应用商店、搜索引擎、官网下载、第三方引流等,即用户接触产品的方式。
Android基础组件
界面组件
Activity & Fragment
Activity
基本用法
-
What:界面容器,常用来承载App中的界面。
-
Why:
- 前台交互
- 程序入口
- 布局容器
-
How:
AndroidManifest.xml中注册 ->res/layout下编写对应的布局文件 -> Activity对应的Class中绑定布局
生命周期
-
启动退出场景:
- 启动:
onCreate()->onStart()->onResume() - 退出:
onPause()->onStop()->onDestroy()
- 启动:
-
部分遮挡:
- 遮挡:Resumed --
onPause()-->Paused - 恢复:Paused --
onResume()--> Resumed
- 遮挡:Resumed --
-
完全遮挡:
- 遮挡:Resumed --
onPause()-->Paused --onStop()--> Stopped - 恢复:Stopped --
onRestart()--onStart()--> Started --onResume()--> Resumed
- 遮挡:Resumed --
-
配置变更:
-
未配置(
android:configChanges):- 销毁:
onPause()->onStop()->onSaveInstanceState()->onDestroy() - 重建:
onCreate()->onStart()->onRestoreInstanceState()->onResume()
- 销毁:
-
已配置(
android:configChanges):onConfigurationChanged()
-
-
后台回收:
- 销毁:没有时机处理
- 重建:
onCreate()->onStart()->onRestoreInstanceState()->onResume()
启动模式
- Standard:默认模式,不复用Activity
- SingleTop:栈顶Activity复用
- SingleTask:栈内Activity复用
- SingleInstance:系统内Activity复用