【发布时间】:2020-09-16 22:03:37
【问题描述】:
将片段放入具有isValidFragment 函数的子目录后,我遇到了问题。
所有活动和片段以前都在:
- app/src/main/java/com/myproject/settings/
它们现在位于此处:
- app/src/main/java/com/myproject/settings/fragments/
在移动并将import com.myproject.settings.fragments.*; 放置在仍位于settings/ 下的SettingsActivity.java 中后,isValidFragment 仍在接收com.myproject.settings.GeneralSettingsFragment..
虽然我对GeneralSettingsFragment.class.getName() 的调用返回了正确的com.myproject.settings.fragments.GeneralSettingsFragment。
请参阅下面的isValidFragment:
@Override
protected boolean isValidFragment(String fragmentName) {
return PreferenceFragment.class.getName().equals(fragmentName)
|| GeneralSettingsFragment.class.getName().equals(fragmentName);
}
我收到的错误:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myproject.settings/com.myproject.settings.SettingsActivity}: java.lang.IllegalArgumentException: Invalid fragment for this activity: com.myproject.settings.GeneralSettingsFragment
我已经清理了项目并手动删除了构建文件夹并没有运气重建。任何指导表示赞赏。
【问题讨论】:
标签: java android android-fragments