我有两个片段。在第一个片段中有一个接口,我通过该接口将变量传递给活动(按预期传递),并且已经在活动中我尝试将此变量传递bundle
给第二个片段并显示它,但我得到FATAL EXCEPTION
.
活动界面:
override fun subChapterItem(chapterId: Int) {
SubChapterBottomSheet.newInstance(chapterId)
val subChapterBottomSheet = SubChapterBottomSheet()
subChapterBottomSheet.show(supportFragmentManager, SubChapterBottomSheet.SubChaptersTag)
}
我试图将变量传递到的片段中的代码:
companion object {
const val SubChaptersTag = "sub_chapters_tag"
private const val ARG_SECTION_NUMBER = "section_number"
@JvmStatic
fun newInstance(sectionNumber: Int): SubChapterBottomSheet {
return SubChapterBottomSheet().apply {
arguments = Bundle().apply {
putInt(ARG_SECTION_NUMBER, sectionNumber)
}
}
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val sectionNumber = arguments?.getInt(ARG_SECTION_NUMBER) // Здесь выходит `FATAL EXCEPTION`
}
UPD
Process: com.example, PID: 14217
kotlin.KotlinNullPointerException
at com.example.ui.fragment.FirstSubChapterBottomSheet.onCreate(FirstSubChapterBottomSheet.kt:48)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2684)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:270)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1173)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1354)
at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1432)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1495)
at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:447)
at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2167)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1990)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1945)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1847)
at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:413)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6831)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:927)