2

ライブラリ モジュール ActionBarSherlock をプロジェクトに含めました。最小 SDK バージョンは 10、ターゲット SDK - 両方のプロジェクトで 13 です。

しかし、プロジェクトをビルドしようとすると、次のような多くのエラーが発生します。

[Library] /Users/rankor777/src/ActionBarSherlock/library/res/values-v14/abs__styles.xml:4: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Holo.ActionBar'.

なんで?

4

4 に答える 4

7
  • ActionBarSherlock zip ファイルをダウンロードし、ActionBarSherlock を使用するアプリケーション モジュールの横に展開します。File->Import Module from IntelliJ IDEASelect library folder under ActionBarSherlock folder を選択し、新しいモジュールとしてインポートします。Android ライブラリ モジュールとしてインポートされます。
  • ActionBarSherlock ライブラリ モジュールのモジュール設定を開き、android-support-v4.jar 依存関係をエクスポートします。

  • ActionBarSherlock を利用するアプリケーションのモジュール設定を開き、新しいモジュールの依存関係を追加します。

  • モジュールのリストから ActionBarSherlock を選択します

写真付きのステップバイステップの説明を参照してください

PS:インターネット上のいくつかのチュートリアルでは、android-support-v4.jar をアプリケーションの libs フォルダーに追加し、ライブラリの依存関係として追加するように指示されています。ActionBarSherlock には既に含まれているので、それを行う必要はありません。ActionBarSherlock からエクスポートするだけです。独自のモジュールにライブラリとして android-support-v4.jar も追加すると、UNXPECTED TOP LEVEL EXCEPTION が発生する可能性があります。

于 2012-12-25T07:39:01.977 に答える
1

ターゲットSDKをバンプする必要があります。(この回答の以前の改訂版では、「最小SDKをバンプする必要がありますが、以下の貼り付けられた ABS ドキュメントによって証明されるように、それは正しくありません)」と誤って述べられていました。

古いバージョンの Android プラットフォームで動作することを意図していますが、Android SDK の 4.0 (またはそれ以降) リリースに対して ActionBarSherlock をコンパイルする必要があります。

ここをチェックしてください:

http://actionbarsherlock.com/usage.html

要件

Ice Cream Sandwich でネイティブ アクション バーとその関連クラスを使用するため、ライブラリとプロジェクトの両方が Android 4.0 以降でコンパイルされている必要があります。このプロジェクトでは、エディターと使用しているビルド システムの両方で JDK 1.6 を使用してコンパイルすることも必要です。

ライブラリは公式サポート ライブラリの拡張であるため、プロジェクトで参照される android-support-v4.jar も必要です。

ここもまた:

http://actionbarsherlock.com/faq.html

ライブラリ自体は、Android 4.0 (API レベル 14) に対してビルドする必要があります。プロジェクトは、4.0 以降である限り、可能な限り最新バージョンの SDK を使用してビルドする必要があります。

新しいデバイスで Android を実行すると、ネイティブ アクション バーが自動的に追加されるため、API レベル 11 以降をターゲットにする必要があります。新しい API に対してコンパイルしますが、アプリは Android の古いバージョンを搭載したデバイスで実行される可能性が高いため、最小限の SDK バージョン以降に導入されたメソッドを使用しないようにするか、適切にチェックして呼び出すように特に注意する必要があります。

于 2012-11-09T21:46:05.207 に答える
1

この問題は、私の記憶が正しければ、Java コンパイラの設定が原因です。[アプリの設定] ダイアログを開き、[コンパイラ] -> [Java コンパイラ] を選択し、使用するコンパイラとして [Javac インプロセス (Java6+ のみ)] が選択されていることを確認します。

参考までに、Google は最新の SDK を使用してビルドすることを推奨しているため、おそらくターゲット SDK を 16 に上げる必要があります。

于 2012-10-05T18:07:44.970 に答える
0

File->Project Structure->Modules->You App->Dependencies に移動します。左下隅の + をクリックし、[モジュールの依存関係] を選択します。ActionBarSherlock を選択します。

そこにない場合は、ライブラリ モジュールであることを確認します。ActionBarSherlock モジュールを展開して [Android] をクリックし、[Is Library Project] をオンにします。

于 2012-12-04T18:28:51.903 に答える