找不到片段构造函数 kotlin

Could not find Fragment constructor kotlin

在创建热门片段时,出现空构造函数错误。

请看我写的代码,创建fragment时如何传递数据?

   mAdapter = SubPagerAdapter(childFragmentManager)
                    for (doc in it.docs!!) {

                        mAdapter.addFragment(
                            PopularFragment(doc.code, "#${doc.name}", 10),
                            doc.name
                        )
                    }
                    viewpager.adapter = mAdapter
                    tabs.setupWithViewPager(viewpager)

class PopularFragment(private val hashTagsCode: Int, private val title: String, private val ItemCount: Int) : Fragment() {

    var mHashTagsCode = hashTagsCode
    var mTitle = title
    var mItemCount = ItemCount
}

您应该始终将 data 传递给 Fragment 使用 Bundle 作为 arguments

 class PopularFragment : Fragment() {
    
        var mHashTagsCode = 0
        lateinit var mTitle :String
        var mItemCount = 0
        
        companion object{
           fun instance(hashTagsCode: Int, title: String, itemCount: Int){
                val data = Bundle()
                data.putString("hash_tag_codes", hashTagsCode)
                data.putString("title", title)
                data.putString("item_count", itemCount)
                return PopularFragment().apply{
                     arguments = data
                }
           }
        }
        
        override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
             mItemCount = arguments?.getInt("item_count")?:0
             mHashTagsCode = arguments?.getInt("hash_tag_codes")?:0
             mTitle = arguments?.getString("title")
        }
    
    }

并用于创建实例

 mAdapter = SubPagerAdapter(childFragmentManager)
 for (doc in it.docs!!) {
      mAdapter
      .addFragment(PopularFragment.intsance(doc.code, "#${doc.name}", 10),doc.name)
 }
 viewpager.adapter = mAdapter
 tabs.setupWithViewPager(viewpager)