kotlin- Bundle将null传递给其他片段

时间:2018-04-17 00:27:58

标签: android android-fragments kotlin fragment

我有一个简单的应用程序,它有1个活动和两个片段,其中一个显示带有OnClickListener的RecyclerView来替换片段 现在我需要从那个arraylist RecyclerView发送数据,点击其他片段,我不知道我必须在哪里输入Bundle以及如何

1 个答案:

答案 0 :(得分:0)

你的主要罪魁祸首是ft1.replace(R.id.MainFram,SubMark())而你必须使用ft1.replace(R.id.MainFram,subMark)的subMark变量。您正在调用Fragment的新实例而不是使用bundle进行片段化。使用这段代码

  val bundle = Bundle()
    bundle.putString("data", "nasser") 
    val subMark = SubMark()
    subMark.arguments = bundle
    var ft1 : FragmentTransaction = supportFragmentManager.beginTransaction() 
    ft1.replace(R.id.MainFram,subMark) ft1.commit()

使用

访问数据
 String name = getArguments().getString("key");