成都网站建设设计

将想法与焦点和您一起共享

kotlinanko页面跳转实现方式,携带参数或flag

1:正常跳转

创新互联主要从事成都网站设计、做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务海西,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

startActivity()

携带参数

startActivity("key" to "值")

2:A页面跳到B页面,再跳到C页面,再跳到A页面时,要求清空B,C页面退出,并且不重走A的生命周期

startActivity(intentFor().singleTop().clearTop())

3:A页面跳到B页面,再跳到C页面,再跳到A页面时,要求清空B,C页面退出,并且重走A的生命周期

startActivity(intentFor().clearTask().newTask())

4:A页面->B页面->C页面->D页面时,销毁A.B.C这三个页面,整个栈中就D页面

startActivity(intentFor().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(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就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持创新互联。


分享标题:kotlinanko页面跳转实现方式,携带参数或flag
文章分享:http://chengdu.cdxwcx.cn/article/ijgcpc.html