【问题标题】:SherlockFragmentActivity causing ClassNotFoundExceptionSherlockFragmentActivity 导致 ClassNotFoundException
【发布时间】:2013-05-19 11:54:48
【问题描述】:

我有一个扩展 SherlockFragmentActivity 的课程

当尝试运行程序时得到ClassNotFoundException

我试过this solution 但无济于事。

我还想提一下,我将这个类设置为清单中的启动器活动。此外,当我将SherlockFragmentAcivity 更改为SherlockActivity 时,我可以运行程序,但不能再使用片段,因为SherlockActivity 类中没有getSupportFragmentManager() 方法。

【问题讨论】:

标签: android android-fragments actionbarsherlock android-manifest


【解决方案1】:

我找到了解决方案。从libs 文件夹中删除支持库对我有用。

【讨论】:

    【解决方案2】:

    如果您有最新的adt version (22),您需要查看Android Private Libraries。在日食中:

    • 右击项目并选择属性
    • 点击 Java 构建路径
    • 点击订单和出口标签并勾选Android Private Libraries

    【讨论】:

    • 是的,我有最新的 adt 版本。还有一个名为Android Private Libraries 的目录,它包含支持库v13 jar 文件
    • 然后按照我上面写的步骤,清理并重建它应该可以工作
    • 我已经选择了该选项(勾选).. clean 构建了项目.. 还是一样。给我同样的异常。
    【解决方案3】:

    我遇到了同样的问题。 我做的错误是将actionbarsherlock项目添加到项目属性-> Java构建路径->项目。相反,我不得不将 actionbarsherlock 添加到项目属性 -> Android -> 库

    我在这里找到了解决方案:https://stackoverflow.com/a/16736937/1820856

    【讨论】:

      【解决方案4】:

      如果你是SherlockActivity,那么获取片段管理器的方法是getFragmentManager()

      【讨论】:

      • getFragmentManager() 方法仅在我将 min-sdk 级别设置为 11 时可用。但我希望应用程序至少支持 api 级别 9。
      • 那么你需要继续使用google提供的支持库。这适用于所有版本。
      猜你喜欢
      • 1970-01-01
      • 2012-04-13
      • 1970-01-01
      • 1970-01-01
      • 2015-04-19
      • 1970-01-01
      • 2021-11-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多