【发布时间】:2020-03-30 10:54:36
【问题描述】:
我有两个活动,一个包含登录过程的所有片段,另一个包含主应用程序的所有片段。
假设我想从 Activity1(包含登录的所有导航图)导航到 Activity2(包含主应用的所有导航图)
class LoginActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
}
fun goToMainActivity(){
startActivity(Intent(this,MainActivity::class.java))
finish()
}
}
这里我调用方法goToMainActivity()
class LoginFragment : Fragment() {
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
return inflater.inflate(R.layout.fragment_login,container,false)
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
btn_go.setOnClickListener {
// call the method goToMainActivity() to kill all fragments contained by that Activity and move foward to MainActivity with another nav_graph
}
}
}
由于 LoginActivity 拥有一个 nav_graph 并且是所有登录 Fragment 的导航主机,现在我想杀死 LoginActivity 中包含的所有 Fragment 并转向一个拥有不同导航图的新 Activity (MainActivity)
这是做这件事的好方法吗?或者我应该以不同的方式导航?
【问题讨论】:
标签: android kotlin navigation android-architecture-navigation