与碎片的Kotlin

var bundle : Bundle ? =null bundle?.putString("text",text) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { frag = Fragment.instantiate(context,Fragment2::class.java.name) as Fragment2 } frag?.arguments=bundle fragmentManager.beginTransaction().replace(R.id.contentPanel1,frag).commit() 

我已经将这些代码写入了fragment1并将数据传递给它

在片段2我收到的捆绑为空任何人都可以解决它

 var bundle : Bundle ? bundle = arguments if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { Toast.makeText(context,bundle.toString(),Toast.LENGTH_LONG).show() } 

问题是您不要初始化下面的bundle.look var。

 val bundle = Bundle() bundle.putString("text",text) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { frag = Fragment.instantiate(context,Fragment2::class.java.name) as Fragment2 } frag?.arguments=bundle fragmentManager.beginTransaction().replace(R.id.contentPanel1,frag).commit() 
Interesting Posts