Unable to instantiate fragment make sure class name....

本文探讨了在使用Viewpager+Fragment时,遇到的无法启动Activity的异常问题,具体为RuntimeException和Fragment$InstantiationException。通过分析发现,自定义Fragment仅定义了带参数的构造方法时,需要确保添加参数为空的构造函数。本文提供了解决方法并解释了其背后的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近使用Viewpager + Fragment来做应用,经常会遇到如下错误

E/UncaughtException-main(13661): java.lang.RuntimeException: Unable to start activity ComponentInfo{......}: android.app.Fragment$InstantiationException: Unable to instantiate fragment xxxxxx...: make sure class name exists, is public, and has an empty constructor that is public

解决办法:

自定义的fragment 如果只定义了带参数的构造方法,那么要把参数为空的构造函数一并写上。原因待进一步研究,知道的朋友不吝赐教!




E FATAL EXCEPTION: main Process: com.example.kucun2, PID: 27907 androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment com.example.kucun2.fragments.OrderDisplayFragment: make sure class name exists at androidx.fragment.app.FragmentFactory.loadFragmentClass(FragmentFactory.java:97) at androidx.fragment.app.Fragment.instantiate(Fragment.java:670) at androidx.fragment.app.FragmentContainer.instantiate(FragmentContainer.java:57) at androidx.fragment.app.FragmentManager$3.instantiate(FragmentManager.java:525) at androidx.navigation.fragment.FragmentNavigator.createFragmentTransaction(FragmentNavigator.kt:394) at androidx.navigation.fragment.FragmentNavigator.navigate(FragmentNavigator.kt:329) at androidx.navigation.fragment.FragmentNavigator.navigate(FragmentNavigator.kt:308) at androidx.navigation.NavController.navigateInternal(NavController.kt:265) at androidx.navigation.NavController.navigate(NavController.kt:1832) at androidx.navigation.NavController.navigate(NavController.kt:1668) at androidx.navigation.NavController.navigate(NavController.kt:1595) at androidx.navigation.ui.NavigationUI.onNavDestinationSelected(NavigationUI.kt:96) at androidx.navigation.ui.NavigationUI.setupWithNavController$lambda$3(NavigationUI.kt:476) at androidx.navigation.ui.NavigationUI.$r8$lambda$BjnX4GnGzOVkMyDjMUkrTEr9dSk(Unknown Source:0) at androidx.navigation.ui.NavigationUI$$ExternalSyntheticLambda5.onNavigationItemSelected(D8$$SyntheticClass:0) at com.google.android.material.navigation.NavigationView$2.onMenuItemSelected(NavigationView.java:331) at androidx.appcompat.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:836) at androidx.appcompat.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:159) at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:987) at com.google.android.material.internal.NavigationMenuPresenter$1.onClick(NavigationMenuPresenter.java:506) at android.view.View.performClick(View.java:8166) at android.view.View.perfo
最新发布
06-07
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值