这篇文章主要介绍了kotlin anko页面跳转实现方式,携带参数或flag,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
1:正常跳转
startActivity<RegisterActivity>()
携带参数
startActivity<ResetPwdActivity>("key" to "值")
2:A页面跳到B页面,再跳到C页面,再跳到A页面时,要求清空B,C页面退出,并且不重走A的生命周期
startActivity(intentFor<MainActivity>().singleTop().clearTop())
3:A页面跳到B页面,再跳到C页面,再跳到A页面时,要求清空B,C页面退出,并且重走A的生命周期
startActivity(intentFor<MainActivity>().clearTask().newTask())
4:A页面->B页面->C页面->D页面时,销毁A.B.C这三个页面,整个栈中就D页面
startActivity(intentFor<LoginActivity>().newTask().clearTask())
以上功能都已测试ok,相关依赖集成已省略、
补充知识:kotlin Activity跳转以及数据传输
1 在要跳转到界面定义newInstance 并定义几个参数名
companion object {
private const val KEY_TITLE = "title"
private const val KEY_SUBTITLE = "subtitle"
private const val KEY_CAR_ID = "car_id"
fun newInstance(context: Activity, title: String, id: Int,subtitle: String) {
context.startActivity<CarListDetailActivity>(KEY_TITLE to title, KEY_CAR_ID to id,KEY_SUBTITLE to subtitle)
}
}
2 在使用跳转的界面 传相关数据进去即可
CarListDetailActivity.newInstance(this,data.number,data.id,collapsing_toolbar_layout.title.toString())
3 在要跳转到界面定义 使用kotlin 使用单利接受即可
private val subtitle: String by lazy { intent.getStringExtra(KEY_SUBTITLE) }
private val title: String by lazy { intent.getStringExtra(KEY_TITLE) }
private val car_id: Int by lazy { intent.getIntExtra(KEY_CAR_ID, -1) }
以上这篇kotlin anko页面跳转实现方式,携带参数或flag就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程学习网。
本文标题为:kotlin anko页面跳转实现方式,携带参数或flag
基础教程推荐
- Flutter进阶之实现动画效果(三) 2022-10-28
- iOS Crash常规跟踪方法及Bugly集成运用详细介绍 2023-01-18
- iOS开发 全机型适配解决方法 2023-01-14
- Android Compose自定义TextField实现自定义的输入框 2023-05-13
- MVVMLight项目Model View结构及全局视图模型注入器 2023-05-07
- iOS开发使用XML解析网络数据 2022-11-12
- Android开发Compose集成高德地图实例 2023-06-15
- Android实现短信验证码输入框 2023-04-29
- iOS中如何判断当前网络环境是2G/3G/4G/5G/WiFi 2023-06-18
- IOS获取系统相册中照片的示例代码 2023-01-03