【发布时间】:2019-12-14 03:21:45
【问题描述】:
我正在开发一个带有 BottomNavigationBar 和 FrameLayout 的 Android 应用程序。对于 BottomNavBar 的每个项目,我都有不同的片段。
我正在尝试将数据从我的 MainActivity 发送到其中一个片段使用
Fragment2 fragmentClass = (Fragment2) getSupportFragmentManager().findFragmentById(R.id.fragLayout);
(fragLayout 是我 FrameLayout 的 ID。
但是当我运行我的项目时,我在 LogCat 中收到以下错误:
.ClassCastException: com.example.Fragment1 无法转换为 com.example.Fragment2
我做错了什么?这段代码运行时 Fragment2 是活动的,为什么它说它不能强制转换为 Fragment2 ?
【问题讨论】:
-
... 因为它是
Fragment1。我想他们不会处于(有效的)继承关系中。 -
您何时以及如何切换到
Fragment2? -
当我点击底部导航栏的一个项目时,我正在切换片段。当我点击它时,它会切换片段,然后运行我的代码将数据发送到片段。
-
所以当你尝试向
Fragment2发送数据时你还在onNavigationItemSelected?
标签: java android android-fragments