カスタム ビューとカスタム定義の属性がいくつかあります。ビューが使用する属性を定義して、Eclipse がコンテンツ アシストに使用できるようにしたいと考えています。
たとえば、res/values フォルダーで次のように宣言されたカスタム xml 属性を取得しました。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="TagAttrs">
<attr name="spColor" format="color" />
</declare-styleable>
</resources>
そして私のレイアウトファイルはカスタム属性を持つカスタムビューを使用しています:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.twp"
...
>
<com.twp.TestView
android:id="@+id/testView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
app:spColor="#FF00FF" >
...
</com.twp.TestView>
</LinearLayout>
android: プレフィックスを使用すると、Eclipse は (TestView の派生元である) LinearLayout に必要なすべてのオプションを提示しますが、app: プレフィックスを使用すると、下部に「要素 com.twp.TestView ではない」と赤で表示されます。利用可能"。また、spColor 内でコンテンツ アシストを実行しようとすると、「現在の場所ではコンテンツ アシストを利用できません」と表示されます。「app」名前空間を定義したので、スタイル可能な宣言を見つけて、少なくとも spColor が色であることを知ることができると思います。
これはEclipseの単なる制限ですか、それともビューのカスタム属性を明示的に定義できますか?