Модераторы: javastic
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Custom View - два контрола в одном, как быть? 
:(
    Опции темы
AleksPingvin
Дата 27.2.2012, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 20.5.2011

Репутация: нет
Всего: нет



Добрый день!

Есть ListView с кастомным элементом.
Кастомный элемент должен представлять собой некую кнопку с нужной обводкой, нужным градиентом, изображением приклееном к ее правой части и чекбоксом к левой, заданным текстом.
Первое что я сделал создал свой класс и унаследовался от View. Перегрузил onDraw в котором рисую контур, заливаю градиентом, рендерю текст и картинку.
А вот как засунуть в нее чекбокс (опять же не стандартный, а свой) пока не понял, ибо addView доступен только для наследников ViewGroup.
С другой стороны я ведь пишу компонент, а не контейнер и наследоваться от существующих или от ViewGroup логически не корректно как-то. 
Думал попробовать в компоненте рендерить и чекбокс, но возникает вопрос как корректно отловить события его активации-деактивации. OnTouch конечно хорош, но мне кажется это не самое верное решение (боюсь будут ложные срабатывания из-за "дребезга" при касании пальцем области чекбокса) + надо отрабатывать и просто клик по кнопке.

Как быть?
PM MAIL   Вверх
McBlob
Дата 27.2.2012, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.11.2011

Репутация: нет
Всего: нет



Собсна, если у Вас кастомный элемент есть набор из нескольких, то почему его не унаследовать от GroupView?

Не понял зачем Вы перегружаете какойто onDraw когда надо перегрузить getView() BaseAdapter`a

Это сообщение отредактировал(а) McBlob - 27.2.2012, 16:46
PM MAIL   Вверх
AleksPingvin
Дата 27.2.2012, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 20.5.2011

Репутация: нет
Всего: нет



А кто вам сказал что я перегружаю onDraw у листа. Я речь вел про компонент кнопки.
PM MAIL   Вверх
McBlob
Дата 27.2.2012, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.11.2011

Репутация: нет
Всего: нет



Хорошо, а зачем перегружать onDraw() кнопки? Почему не назначить ей селектор в качестве бэкграунда?
Я бы, на Вашем месте, нарисовал итем в XML`е, а потом применил бы его при помощи LayoutInflatter`a
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Android | Следующая тема »


 




[ Время генерации скрипта: 0.0681 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.