当前位置: 移动技术网 > 移动技术>移动开发>Android > kotlin anko页面跳转实现方式,携带参数或flag

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

2020年05月11日  | 移动技术网移动技术  | 我要评论

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就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网