どのように私はカスタムAndroidのコントロールを設計し、XMLでそれを使うのですか?

StackOverflow https://stackoverflow.com/questions/3437109

質問

私は、カスタムAndroidのコントロールを作成する方法を理解し、私は、XMLレイアウトからの属性をプルする方法を理解すると信じています。私はそれから任意の子要素を取得する方法は、しかし、知らない。

ここで私が達成しようとしているものの視覚的な例があります:

public class Menu extends LinearLayout
{
    // Custom Code
}

public class MenuItem extends Button
{
    // Custom Code
}

<!-- Layout -->
<?xml version="1.0" encoding="utf-8"?>
<Menu>
    <MenuItem/>
    <MenuItem/>
</Menu>
私のメニューが作成されると、私は2つのメニューアイテムへの参照を取得するどのように行う?

役に立ちましたか?

解決

あなたはそれを行うためのandroid:idを使用する必要があります。あなたはどのように多くのチャイルズを知ることができません場合は、あなたが持っているでしょう。

LinearLayoutので、のViewGroup に延びていますあなたはこれらのビューを取得するためにgetChildAt()getChildCount()を使用することができます。

他のヒント

は、任意のコントロール(カスタムまたはシステム)にアクセスするためのIDは必須です。 IDを指定することによって、あなたはそれを独自のアイデンティティを与えます。このIDを使用して、あなたはそのコントロールへの参照を取得することができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top