【发布时间】:2012-04-25 17:00:46
【问题描述】:
问候和问候,
短版:我正在尝试在我的 Android 应用程序中使用 DialogFragment,该应用程序的 minSkdVersion 为 8 (Android 2.2)。为了使用它们,我必须能够调用“getSupportFragmentManager()”。为了做到这一点,我尝试将调用 Activity 更改为 FragmentActivity,它允许 getSupportFragmentManager() 在运行时解析,但是当尝试在运行时创建该意图时,我得到一个 NoClassDefFoundError,因为应用程序无法解析上游的某些东西它
W/dalvikvm(333):无法解析超类...
既然如此,我怎样才能从一个简单的 Activity 调用 getSupportFragmentManager() 而不使该 Activity 成为 FragmentActivity (它无法工作)?还是我需要将 Activity 变成 FragmentActivity,但我需要进行一些其他更改才能使其正常工作?
仅作记录:我已经将 android-support-v4.jar 添加到项目中(否则我根本无法编译)。
提前感谢您的帮助。
【问题讨论】:
-
完整的日志内容是什么?
W/dalvikvm(333): Unable to resolve superclass...不是很有帮助。 -
04-25 08:53:14.298: W/dalvikvm(333): 无法解析 Lcom/.../android/.../ActiveTracking 的超类; (23)
-
啊,原来FragmentActivity是找不到的类。您确定您的兼容性库包含在您的 apk 中吗?您可以使用 dex2jar 来检查这一点。看来您需要将您的库移动到
libs文件夹,以便它们包含在 android 工具的较新版本中。 -
确实!谢谢你,dmon。你能帮我一个大忙吗?您会将其发布为答案,以便我给予您信任吗? ^_^
-
我喜欢帮忙,特别是当他们喜欢我的时候:)
标签: android noclassdeffounderror android-dialogfragment android-fragmentactivity