4

XMLリソースを定義するAdnroidライブラリプロジェクトがあります。

例としてドローアブルセレクターを使用してみましょう(ただし、文字列、スタイルなどに問題があります)。

LibProject / res / drawable /button_selector.xml...セレクターを定義します

LibProject / res / layout /view.xml....セレクターを問題なく使用します

 `<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/sign_up_fly_buttons"
        android:background="@drawable/button_selector"/>`

次に、アプリのレイアウトでそれを参照したいと思います

AppProject / res / layout /view.xml..。

`<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/sign_up_fly_buttons"
        android:background="@drawable/button_selector"/>`

しかし、アプリではコンパイルも参照もできません。私はさまざまな名前空間の呪文を試し、運が悪かったのでそれを参照しようとしました...

何か案は?

追加:このような参照の完全な形式は@ [packagename:] type / idであり、パッケージ名を省略した場合は、このリソースファイルが使用されるパッケージであることを読みました。

この例は次のようになります:@ com.mylibrary:drawable / button_selector

しかし、それは私にはうまくいきません!ライブラリのセットアップ/インポートに何か問題があるはずですか?

私のライブラリは、ライブラリプロジェクトとしてマークされた別のEclipse Androidプロジェクトにあり、アプリから「依存プロジェクト」として参照され、コードがビルドされ、正常にリンクされます。

4

1 に答える 1

1

OK、問題が見つかりました!

Eclipse では、プロジェクト プロパティ -> Java ビルド パス -> 「プロジェクト」の「タブ」に、ライブラリ プロジェクトを追加しました。

しかし、私はそれを Project Properties -> Android -> Library area に Library Project として追加する必要もありました。

私は他の人のためにこれをしましたが、ここでそれをするのを忘れていました.

私の間違いを理解しようとしたすべての人に感謝します。

これで、リソースが正しくマージされ、パッケージ名なしで「短い形式」の形式を使用してリソースを参照できるようになりました。

于 2012-10-08T09:19:47.280 に答える