Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ClassCastException:Fragment1不能转换为Fragment2_Java_Android_Android Fragments - Fatal编程技术网

Java ClassCastException:Fragment1不能转换为Fragment2

Java ClassCastException:Fragment1不能转换为Fragment2,java,android,android-fragments,Java,Android,Android Fragments,我正在开发一个Android应用程序,带有底部导航栏和框架布局。底部导航栏的每一项都有不同的片段。 我正在尝试使用 Fragment2 fragmentClass=(Fragment2)getSupportFragmentManager().findFragmentById(R.id.FragmaYout) (fragLayout是我的FrameLayout的ID 但是当我运行我的项目时,我在LogCat中得到以下错误: .ClassCastException:com.example.Fragm

我正在开发一个Android应用程序,带有底部导航栏和框架布局。底部导航栏的每一项都有不同的片段。 我正在尝试使用
Fragment2 fragmentClass=(Fragment2)getSupportFragmentManager().findFragmentById(R.id.FragmaYout)
(fragLayout是我的FrameLayout的ID

但是当我运行我的项目时,我在LogCat中得到以下错误:

.ClassCastException:com.example.Fragment1不能转换为com.example.Fragment2


我做错了什么?当代码运行时,Fragment2是活动的,为什么它说它不能转换为Fragment2?

经过几个小时的搜索,我找到了问题的解决方案。我刚刚使用
fragment2fragmentTwoClass=(Fragment2)fm.getFragments().get(1);
而不是
Fragment2 fragmentTwoClass=(Fragment2)fm.getFragmentById(R.id.FragmaYout);

…因为它是一个
Fragment1
。我可以想象它们不存在于一个(有效的)继承关系。如何以及何时切换到
Fragment2
?当我单击底部导航栏的一项时,我正在切换fragment。当我单击它时,它会切换fragment,然后运行我的代码将数据发送到该片段。因此,当您尝试将数据发送到
Fragment2时,您仍然处于
onNavigationItemSelected
?相关: