12

モジュールで次のスタイルを定義し、それをアクティビティのテーマとして使用したい

Android モジュールの styles.xml:

<resources>
    <style name="MyTheme" parent="android:Theme.Light.Panel"></style>
</resources>

Android アプリケーションの AndroidManifest.xml:

 <activity android:name="MyActivity" android:theme="@style/MyTheme"> ... </activity>

IntelliJを使用していますが、次のようなコンパイル エラーが発生します。

android-apt-compiler: AndroidManifest.xml:26: エラー: エラー: 指定された名前に一致するリソースが見つかりません (「テーマ」で値「@style/MyTheme」)。

メイン アプリケーションでモジュールの jar にあるスタイルを参照するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

6

この問題を修正したところ、プロジェクトは次のようになります。

  • あなたはモジュールを持っています(例えば、moduleLib)
  • あなたはモジュールを持っています(例えばmoduleMain)
  • moduleMain は moduleLib に依存し、moduleLib のいくつかのテーマは moduleMain で参照されます

私がしたこと:

1.moduleLibをライブラリプロジェクトとして設定

(menu->Project Structures...->Modules->moduleLib->facet Android -> "Is Library project" にチェックを入れます。

2 moduleLib に依存する moduleMain を設定します

2.1 moduleMain の設定に移動します (手順は前の手順と同様です)。

2.2「依存関係」に切り替えます

2.3 「+」をクリックし、「module Dependency」を選択し、moduleLib を追加します。

2.4「スコープ」をコンパイルに変更します(提供されたものを取得しようとしましたが、テーマを使用できません)

わたしにはできる

于 2013-07-10T04:09:41.863 に答える
2

モジュールの依存関係が正しく設定されている場合、ライブラリ モジュールのリソースは自動的に App モジュールにコピーされてパックされます。つまり、jar ファイルではなく、モジュール ディレクトリへの依存関係です。

ライブラリ プロジェクトの jar 出力は、リソースをパッケージ化しません。デフォルトの Android ビルド ツールはサポートしていません。

apklibリソースもパッケージ化できるused byという特別なパッケージ タイプmaven-android-pluginがありますが、この機能を使用するために Maven でビルドする必要があります。

于 2013-07-13T16:05:31.610 に答える