web-dev-qa-db-ja.com

IntelliJ 12 + ActionBarSherlock設定:クラス「Android.support.v4.app.FragmentActivity」が見つかりませんでした

IntelliJ 12 + ABS(ActionBarSherlock)の設定に関する多数のQ&Aがあります。

この質問 に似ていますが、異なるエラーが表示されます。

全体的なコンパイルと実行は問題ありませんが、タブナビゲーション(SherlockActivity implements ActionBar.TabListener)を使用するアクティビティのみが次のエラーとクラッシュを示します。一般的なSherlockActivityショーをうまく使用できることに注意してください。

"すべてのオーバーライドされたメソッドで、メソッドcom.actionbarsherlock.internal.app.ActionBarWrapper $ TabWrapper.onTabReselected" から参照されるクラス「Android.support.v4.app.FragmentActivity」が見つかりませんでした( onTabUnselectedonTabSelectedonTabReselected)。

Android-support-v4は正常に参照されていないようですが、試行錯誤によるチェック/チェック解除では見つけるのが難しいようです。

IntelliJプロジェクトの設定は次のとおりです。

1。 Libraryは、ABSライブラリフォルダーの名前です。 library settings

2。私のプロジェクト設定。 my settings

私は両方のAndroid-support-v4をprovidedに設定しました。もっと何ができますか?

remove Android-support-v4 to my own projectですが、import Android.support.v4.app.FragmentTransactionで必要なため、implements ActionBar.TabListenerで参照エラーが表示されます。

15
Youngjae

この設定は正しくありません。Android-support-v4ライブラリのスコープはコンパイルに設定する必要があります。これは、Android=に存在せず、アプリケーションに含める必要があるためです。 。

Android-support-v4の2番目のコピーは、アプリケーションの依存関係から削除する必要があります。これは、Android-support-v4に対してExportオプションが有効になっているライブラリモジュールを介してアプリケーションで使用できます。

14
CrazyCoder

Android Studio(バージョン1.1.0)でも、Googleの例(リンク: http://developer.Android。 com/training/implementing-navigation/lateral.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'

たぶん、この答えは他の答えよりも役立つでしょう。

2
KingAlex1985

記録のためだけに-これは私のために問題を解決しました:(via https://stackoverflow.com/a/35248120/2409397

Build> Rebuild Project

0
alwe

Adt/sdk/extras/Android/support/v4/Android-support-v4.jar(adtはAndroid sdkを指す必要があります)をAndroid SDKのクラスパスに追加しました考え。

0
Thomas