Android プロジェクトに jar ライブラリとして簡単に追加できる Android コンポーネントを作成しようとしています。
このために、パスを使用してグラフィック xml 要素に追加する「res/values/attr.xml」に新しい xml 属性を作成する必要がありました。
xmlns:app="http://schemas.android.com/apk/res/com.component.mypackage"
次に、このプロジェクトを jar ライブラリとして別のプロジェクトにインポートします。新しいプロジェクトでグラフィック コンポーネントを作成するには、以下のパスを変更する必要があります。
xmlns:app="http://schemas.android.com/apk/res/com.mylibrary"
しかし、パスが正しくありません: カスタム属性が見つかりません。
R ファイルをライブラリ jar に統合することに成功し、xml からアクセスして、次のようなカスタム コンポーネントを宣言することができました。
<PreferenceScreen
xmlns:android = "http://schemas.android.com/apk/res/android"
xmlns:app = "http://schemas.android.com/apk/res/com.myLibraryPackage">
<com.myLibraryPackage.mySelfComponent
android:title="Name"
android:key="name"
app:hintText="Input your name"
android:dialogTitle="Your name "
app:validator="com.myLibraryPackage.myValidatorClass" />
奇妙なことに、自分のファイル attr.xml を自分のプロジェクトのリソースに入れると、それが機能します。つまり、com.myLibraryPackage.mySelfComponent が見つかります。その場合、なぜ com.myLibraryPackage も見つからないのでしょうか?
(私も交換してみました
xmlns:app="http://schemas.android.com/apk/res/com.myLibraryPackage"
に
xmlns:app="http://schemas.android.com/apk/res/com.myApplicationPackage"
しかし、それはまだ動作しません)
プロジェクトへの統合を容易にするためにjarを使用することをお勧めします。
私を助けることができるこのような問題に遭遇した人はいますか?
ありがとうございました。