Определить id edittext'a по клику

Ответить
Opaaa
Сообщения: 8
Зарегистрирован: 15 апр 2013, 07:08

Определить id edittext'a по клику

Сообщение Opaaa » 15 апр 2013, 07:26

Программным путем создаются edittext'ы, которые засовываются в tablerow (3 вряд-строка одной записи в таблице),их количество зависит от количества записей в бд, как определить id edit'a или tablerow'a, по которому осуществили клик?

Очень дико извиняюсь, если вопрос уже был, сижу с телефона связь периодически пропадает и нет возможности заниматься поисками аналогичных задач)заранее благодарен)

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Определить id edittext'a по клику

Сообщение rezak90 » 15 апр 2013, 09:50

Вы когда создаёте edittext'ы делайте им setId(id) что бы потом знать айди по клацнувшому элементу
R.id.team
Политика на форуме запрещена

Opaaa
Сообщения: 8
Зарегистрирован: 15 апр 2013, 07:08

Re: Определить id edittext'a по клику

Сообщение Opaaa » 15 апр 2013, 10:10

rezak90 писал(а):Вы когда создаёте edittext'ы делайте им setId(id) что бы потом знать айди по клацнувшому элементу
Это я знаю и делаю) я немного не пойму как реализовать обработку нажатия...клик для любой ячейки(edittext) так называемой таблицы)

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Определить id edittext'a по клику

Сообщение rezak90 » 15 апр 2013, 12:38

OnClickListener ?!?
R.id.team
Политика на форуме запрещена

Opaaa
Сообщения: 8
Зарегистрирован: 15 апр 2013, 07:08

Re: Определить id edittext'a по клику

Сообщение Opaaa » 15 апр 2013, 16:16

Что чего и где писать не пойму...думал id отловить в событии onclick(view v)? Или я путаю чего?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Определить id edittext'a по клику

Сообщение rezak90 » 15 апр 2013, 21:02

думал id отловить в событии onclick(view v)?
конечно, там и нужно ловить айди
R.id.team
Политика на форуме запрещена

Opaaa
Сообщения: 8
Зарегистрирован: 15 апр 2013, 07:08

Re: Определить id edittext'a по клику

Сообщение Opaaa » 16 апр 2013, 03:25

rezak90 писал(а):
думал id отловить в событии onclick(view v)?
конечно, там и нужно ловить айди
Дело в том, что ни на одной ячейке не срабатывает это событие...кнопка на форме, которая изначально на форме отрабатывает..а эти не хотят)

Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Re: Определить id edittext'a по клику

Сообщение neoksi » 16 апр 2013, 03:57

Вешайте обработчик нажатия во время создания EditText, через setOnClickListener. И не нужно будет мучиться с их ID.

Opaaa
Сообщения: 8
Зарегистрирован: 15 апр 2013, 07:08

Re: Определить id edittext'a по клику

Сообщение Opaaa » 16 апр 2013, 06:11

neoksi писал(а):Вешайте обработчик нажатия во время создания EditText, через setOnClickListener. И не нужно будет мучиться с их ID.
Самое интересное, что и это я делал))
Сбило с толку то, что я думал, что одного клика по эдиту достаточно, а онклик в нем срабатывает по второму)) или так только у меня?)))
Id мне все равно нужен, как-то же необходимо сопоставлять записи в бд и записи в эдитах)

Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Re: Определить id edittext'a по клику

Сообщение neoksi » 16 апр 2013, 06:50

Не совсем понял. Вы имеете ввиду, что при первом нажатии не срабатывает онклик? Возможно срабатывает онфокус?
Вообще, я лично обхожусь без Id в динамически генерируемых визуальных объектах. Просто создаю свой класс в котором храню все нужные данные и уже к нему привязываюсь отображаемые элементы.

Opaaa
Сообщения: 8
Зарегистрирован: 15 апр 2013, 07:08

Re: Определить id edittext'a по клику

Сообщение Opaaa » 16 апр 2013, 07:29

neoksi писал(а):Не совсем понял. Вы имеете ввиду, что при первом нажатии не срабатывает онклик? Возможно срабатывает онфокус?
Вообще, я лично обхожусь без Id в динамически генерируемых визуальных объектах. Просто создаю свой класс в котором храню все нужные данные и уже к нему привязываюсь отображаемые элементы.
Скорей всего так и происходит, хотя логично, что клик по объекту происходит...и вроде бы событие должно произойти...
А можно кусочек примера, как вы это делаете?

Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Re: Определить id edittext'a по клику

Сообщение neoksi » 16 апр 2013, 20:26

Кусочком кода тут не обойтись и реализация тут может быть разной, могу описать логику:
1) Получаю данные в курсор из БД.
2) На каждую запись в курсоре создаю объект Item, в который помещаю данные из записи курсора и добавляю к примеру реализации интерфейсов онКлик или иные методы для отображения. Тобишь этот объект Item в себе содержит наиболее полную информацию о данных и что с ним можно делать, к примеру как именно для него обрабатывать onClick.
3) Скармливаю эти Item собственным реализациям List, который отвечает за упорядочивание и взаимодействие адаптера с содержащимися в нем Item.
4) List скармливаю адаптеру и теперь при внесении изменений в List, к примеру добавление элемента, адаптер получит сообщение о том, что необходимо перерисовать и т.д.
5) Адаптер привязываю к элементу, который будет отображать мои данные, к примеру ListView, а также устанавливаю его в нем отвечающим за нажатия.

В общем, это как-то так выглядит, кажется много кода, но использовать удобно)

Ответить