Как добавить кнопку в расширяемый класс View?

Можно ли добавить кнопку в класс, расширяющий представление? ""общедоступный класс josh extends View"" Если нет, то как я могу объединить кнопку с представлением, когда на нее ссылаются в моем основном действии? угу помогите....


person Kohler Fryer    schedule 28.02.2012    source источник
comment
Вы имеете в виду, что вы сами рисуете в этом новом представлении и хотели бы нарисовать кнопку поверх его части?   -  person Julian Fondren    schedule 28.02.2012
comment
Да точно Джулиан! Как я могу это сделать?   -  person Kohler Fryer    schedule 28.02.2012
comment
Я не думаю, что возможно нарисовать кнопку в классе (extends View).... Когда я устанавливаюContentView в этом классе, могу ли я тогда добавить кнопку? (addContentView(layout, params)) Если да, то как я не могу понять это правильно :( } });   -  person Kohler Fryer    schedule 28.02.2012
comment
попробовать реализовать ViewGroup?   -  person st0le    schedule 28.02.2012


Ответы (2)


Два пути:

  1. Сделать кнопку и собственное представление дочерними элементами FrameLayout, которую кнопка может быть нарисована поверх вашего пользовательского вида.

  2. Нет настоящей кнопки. Вместо этого нарисуйте что-то похожее на кнопку, обработайте сенсорные события особым образом, если они находятся в пределах ее размеров, и т. д. Это больше подходит для чего-то вроде игры.

Я полагаю, что вы можете сделать № 2, но подкласс Button будет рисовать, чтобы он работал точно так же, как обычная кнопка, и просто позиционировался/измерялся вашим пользовательским представлением, но я не знаю, как это сделать.

person Julian Fondren    schedule 28.02.2012

Если вы хотите добавить кнопку в представление во время выполнения, проверьте этот предварительный вопрос... Как добавить кнопку управления в xml-представление Android во время выполнения?

person bytebender    schedule 28.02.2012
comment
Это добавляет View в ViewGroup. Класс OP расширяет View, поэтому это не ViewGroup. - person Julian Fondren; 28.02.2012