Как создать собственный элемент управления Android и использовать его в Xml? - PullRequest
3 голосов
/ 09 августа 2010

Я понимаю, как создать пользовательский элемент управления 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 ]

1 голос
/ 09 августа 2010

Вы должны использовать android:id, чтобы сделать это.Если вы не знаете, сколько у вас будет дочерних элементов:

LinearLayout extends ViewGroup , поэтому вы можете использовать getChildAt() и getChildCount() для получения этих представлений.

0 голосов
/ 09 августа 2010

для доступа к любому элементу управления (пользовательский или системный) идентификатор является обязательным. указав идентификатор, вы даете ему уникальную идентичность. Используя этот идентификатор, вы можете получить ссылку на этот элемент управления.

...