1. ホーム
  2. android

[解決済み] styles.xmlのカスタム属性

2022-04-15 13:05:01

質問

カスタムウィジェットを作成し、layout.xmlで宣言しています。 また、attr.xmlにいくつかのカスタム属性を追加しています。 しかし、styles.xmlのスタイルでこれらの属性を宣言しようとすると、次のようなメッセージが表示されます。 No resource found that matches the given name: attr 'custom:attribute'.

私は xmlns:custom="http://schemas.android.com/apk/res/com.my.package" を含む、styles.xml のすべてのタグに含まれています。 <?xml> , <resources> および <style> しかし、カスタム XML 名前空間が見つからないという同じエラーが表示されます。

しかし、この名前空間を使用して、layout.xml でビューに属性を手動で割り当てることができます。 私の問題は、styles.xmlに私のattr.xmlを認識させることにあります。

どうすればいいですか?

わかったぞ!答えは NOT は、スタイルで名前空間を指定します。

<?xml version="1.0" encoding="utf-8" ?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="CustomStyle">
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>

        <item name="custom_attr">value</item> <!-- tee hee -->
    </style>
</resources>