java - Android ActionBar 找不到资源

标签 java android android-support-library

我正在为 android 2.2 的应用程序移植 ActionBar 功能。启动任何 ActionBarActivity 时都会出现以下错误:

java.lang.ExceptionInInitializerError
at android.support.v7.app.ActionBarActivityDelegate.createDelegate(ActionBarActivityDelegate.java:54)
at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:96)

...

Caused by: java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$attr
        at android.support.v7.app.ActionBarActivityDelegateBase.<clinit>(ActionBarActivityDelegateBase.java:47)

我的设置是: IntelliJ Idea CE - 135.406 Android 支持库 - 19.0.1

基于类似的问题,我有:

  • 将 v7 支持添加为 jar
  • 将 appcompat 添加为库项目
  • 更改 Activity 以扩展 ActionBarActivity
  • 添加到 list android:theme="@style/Theme.AppCompat"

但仍然出现资源错误,有什么建议可以解决这个问题吗?

最佳答案

我解决了这个问题。问题是 IDE 添加了奇怪的包位置并且 jar 找不到它,所以当您添加此类库时,请注意使用正确的路径重命名包,请参见下图示例:

before after

我将 android.support.v7.appcompat 手动放入“程序包名称”字段中。有点晦涩,因为你在添加库的时候没有关注这个字段。

关于java - Android ActionBar 找不到资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22362269/

相关文章:

Java 编译日期,如 C __DATE__

java - 透明面板上透明图像的旋转

java - Spring Boot 外部应用程序.properties

android - NotificationBuilder.setProgress 在 2.3.5 上不执行任何操作

java - 在 Ubuntu 中的 Java 中使用同一包中的类

android - 使用 Android MediaPlayer 进行流式传输 - 捕获错误和缓冲

Android Espresso 与 Actionbar

android - 使用 chatadapter 保存聊天记录

android - 状态栏变白,后面不显示内容

java - 加载 ScriptC 脚本失败/无法加载库 - Renderscript Android