片段运行:
val fragment = DescriptionFragment()
val bundle = Bundle()
bundle.putInt("position", position)
fragment.setArguments(bundle)
val activity=context.context as AppCompatActivity
activity.supportFragmentManager
.beginTransaction()
.replace(R.id.framelayout, fragment)
.commitNow()
试图在正在运行的片段中获取传递的数字:
val position: Int = getArguments()?.getInt("position", 0) ?: 0
问题是它position
总是等于默认值——即 0。
你在哪里声明 val 位置?如果在片段类的主体中,则变量初始化时的参数尚未由您分配。
将变量初始化移动到任何生命周期方法