回顾:
约束布局:
靠控件间约束来完成复杂界面的设计
每个控件可以添加4个约束,水平或垂直方向必须要添加一个
实验:
重点:
约束布局中不同约束的添加
组件
Activity工作栈
Activity是由Android系统统一管理的。
我们需要了解每个Activity所处的不同状态
Activity提供的几个生命周期方法,在不同状态是会回调这些方法。
https://developer.android.google.cn/guide/components/activities/activity-lifecycle
kotlin的方法
方法名称,返回值,参数列表
fun 方法名称:返回值(参数列表){}
生命周期方法
onCreate
onStart
onResume
onPause
onStop
onDestroy
保存临时状态
override fun onSaveInstanceState(outState: Bundle?) {
super.onSaveInstanceState(outState)
Log.e("MyLog","======onSaveInstanceState========")
//保持临时状态
outState?.putString("key01","保保存的临时信息")
}
恢复临时状态
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//加载界面
setContentView(R.layout.activity_main)
Log.e("MyLog","======onCreate========")
val data = savedInstanceState?.getString("key01")
Log.e("MyLog","======临时保存的数据为$data========")
}
$变量名 为占位符来完成字符串拼接
实验:
Kotlin匿名内部类
val 变量名 = object:类名(参数){
实现抽象方法
}
后期实例化对象
lateinit var 变量名:类型
从分析入手
充分理解你写的每行代码的作用