15

有很多关于 IntelliJ 12 + ABS(ActionBarSherlock) 设置的问答。

与此问题类似的情况,但显示不同的错误。

总体编译和运行正常,但只有使用 Tab Navigation( SherlockActivity implements ActionBar.TabListener) 的 Activity 会出现以下错误和崩溃。请注意,我可以SherlockActivity很好地使用一般节目。

“找不到类 'android.support.v4.app.FragmentActivity',从方法 com.actionbarsherlock.internal.app.ActionBarWrapper$TabWrapper.onTabReselected 引用”在每个覆盖的方法(onTabUnselected,,,onTabSelected)上onTabReselected

似乎 android-support-v4 没有被成功引用,但通过检查/取消检查反复试验很难找到。

我的 IntelliJ 项目设置如下。

1. 库是ABS 库文件夹的名称。 库设置

2.我的项目设置。 我的设置

我将 android-support-v4 都设置为provided。我还能做什么?

一些答案说要删除 android-support-v4到我自己的项目,但它显示参考错误,import android.support.v4.app.FragmentTransaction因为implements ActionBar.TabListener需要它。

4

4 回答 4

14

此配置不正确,android-support-v4必须将库的范围设置为编译,因为它在 Android 上不存在,并且必须包含在您的应用程序中。

必须从应用程序依赖项中删除第二个副本android-support-v4,它将通过启用了导出选项 的库模块提供给您的应用程序android-support-v4

于 2013-05-06T17:18:08.007 回答
2

当我想从谷歌示例中检查/测试“EffectiveNavigation”应用程序时,我在 Android Studio(版本 1.1.0)中也遇到了这个问题(链接:http: //developer.android.com/training/implementing-navigation/横向.html )

我所要做的就是在路径“.\EffectivNavigation\app\builde.gradle”中添加这个代码片段:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:20.0.0'
}

所以整个 build.gradle 看起来像这样:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.example.android.effectivenavigation"
        minSdkVersion 14
        targetSdkVersion 14
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:20.0.0'
}

你也可以使用

compile 'com.android.support:support-v4:20.+'

代替

compile 'com.android.support:support-v4:20.0.0'

也许这个答案比其他答案对你更有帮助。

于 2015-03-13T09:27:11.637 回答
0

我将 adt/sdk/extras/android/support/v4/android-support-v4.jar(adt 应该指向 android sdk)添加到 Idea 中 Android SDK 的类路径中。

于 2014-09-24T09:22:17.983 回答
0

仅作记录 - 这为我解决了问题:(通过https://stackoverflow.com/a/35248120/2409397

Build> Rebuild Project

于 2016-12-24T23:24:10.310 回答