activity 跳转
活动跳转 性能低于 片段跳转,但是使用也很多
具体代码
//重载 活动创建函数 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.fragment_first) //获得意图 意图最好不要定义在回调函数中中 val intent1= Intent(this,ScrollingActivity::class.java).apply{} findViewById<Button>(R.id.button_first).apply { setOnClickListener { // 执行 意图 跳转另一个 activity startActivity( intent1 ) } } }
fragment 跳转
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) //根据 R.id.action_FirstFragment_to_SecondFragment 进行跳转 // 这个东西可以理解为流向,可以在 res navigation 中进行定义 view.findViewById<Button>(R.id.button_first).setOnClickListener { findNavController().navigate(R.id.action_FirstFragment_to_SecondFragment) } }
activity 传递参数
发送方活动 发送参数
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.fragment_first) val name1=R.string.lmk123 //放置参数到 intent 中 val intent1= Intent(this,ScrollingActivity::class.java).apply{ putExtra("var1","参数1")} findViewById<Button>(R.id.button_first).apply { setOnClickListener { startActivity( intent1) } } }
接收方活动 接收参数
override fun onCreate(savedInstanceState: Bundle?) { //。。。。。 //。。。。。 //接收参数 val name1 = intent.getStringExtra("var1") findViewById<TextView>(R.id.t5).apply { text=name1 } }