从活动转移到科特林的碎片

时间:2020-05-21 10:53:32

标签: android-fragments kotlin

大家好,我正在使用kotlin,并且在viewpager中有一些片段。现在我想从一个活动中打开一个fragmnet。就像我单击活动按钮一样,所有previos活动都将关闭,而Main活动将在片段所在的位置打开。但是问题是我想从那里打开一个特定的片段。

这是我到目前为止所做的:

此代码转到片段所在的主要活动:

  binding.btnGoToProj.setOnClickListener {
            finish()
            val i = Intent(this, MainActivity::class.java)
            intent .putExtra("openF2",true)
            i.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
            startActivity(i)

并且“主要活动”的onCreate内的这段代码应该打开myprojectsfragmentcu,并且不起作用。这里的R.id.old是Main Activity中第一个片段的ID,我想打开第二个片段,所以我用someFragment用ID“ old”替换了片段:

 val extras = intent.extras
        if (extras != null && extras.containsKey("openF2")) {
            val openF2 = extras.getBoolean("openF2")
            if (openF2) {


 val someFragment = MyProjectsFragmentCu()
               val manager = supportFragmentManager val transaction =  manager.beginTransaction()
               transaction.replace(
                   R.id.old,
                   someFragment
               ) 
               transaction.addToBackStack(null) 
               transaction.commit()
            }
        }

请告诉我我在做什么错。谢谢!

0 个答案:

没有答案