我正在创建一个Android应用程序(Java)并首次使用导航组件和Hilt。在导航编辑器中,我正在创建目的地,并看到我创建的已使用@AndroidEntryPoint注解的片段现在显示为“Hilt_”+片段名称。现在我的应用无法构建,因为编译器正在查找具有“Hilt_”+片段名称的构造函数,而不仅仅是片段名称。例如:我的片段名为HomeFragment,但在导航编辑器中名为Hilt_HomeFragment。编译时出现错误:
Caused by: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment com.blah.blah.fragment.Hilt_HomeFragment: could not find Fragment constructor
如何处理名称差异,以便我可以同时使用Hilt和导航组件?
1条答案
按热度按时间yzuktlbb1#
“Hilt_HomeFragment”是一个为Hilt生成的类,你不应该关心它。只要使
Build
-〉Clean Project
。然后转到你的图,清 debugging 误的name
,并写一个正确的完整的包路径。例如:当您开始在
name
字段中键入内容时,Android Studio会显示提示,其中包含您可以使用的匹配片段-只需选择合适的片段,name
就会被填充。