325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|||||||||||
1 | |||||||||||
Не обрабатывается клик по позиции ListView22.11.2012, 22:41. Показов 2517. Ответов 19
Метки нет (Все метки)
Создан листвью через симпладаптер. В основе лежит лайот с двумя текстовыми полями. Кликаю по позиции в списке, а идешка кликнутой позиции соответствует ЛинерЛайоту, а не текствью. Вроде взял разбирать работающий пример, никак не пойму.
0
|
22.11.2012, 22:41 | |
Ответы с готовыми решениями:
19
Почему не обрабатывается клик? Клик по кнопке в элементе listView Клик по ListView и обработка выделенного ListView - клик по Item.SubItems |
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
|
|
23.11.2012, 00:19 | 2 |
а в чем вопрос?
0
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
||||||
23.11.2012, 13:06 [ТС] | 3 | |||||
Вопрос в том, как мне получить значение (текстовое) нажатого элемента. В уроках, коих много в инете, там это делается именно через View itemClicked, где itemClicked это нажатый TextView, и из него получают текст, а у меня получается что я нажимаю на Layout, а не на TextView. Конечно можно данные из БД записать в массив, потом этот массив поместить в адаптер, а потом по выбранному ид получить значение, но мне кажется, что тут есть лишняя операция. Хотелось бы сразу получать данные.
Добавлено через 4 часа 24 минуты Короче данные получил таким образом:
0
|
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
|
||||||
23.11.2012, 22:19 | 4 | |||||
1
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
23.11.2012, 23:15 [ТС] | 5 |
Подскажите еще, а есть ли какие либо скрытые поля? Например для хранения служебной информации?
0
|
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
|
|
23.11.2012, 23:25 | 6 |
где поля? какой еще служебной информации?
0
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
24.11.2012, 14:27 [ТС] | 7 |
Ну например при клике на позиции в листвью я хотел бы получить ид записи и уже все данные получать непосредственно из БД. Так вот, чтобы хранить этот ид я бы записал его в тот же TextView с visible=false, но мне кажется у него такого св-ва нет
0
|
146 / 129 / 6
Регистрация: 29.07.2008
Сообщений: 506
|
|
24.11.2012, 14:54 | 8 |
Я бы вам посоветовал не путать назначения элементов. Если вам надо получать текстовое значение - то вы должны брать его из вашего набора данных по позиции. а не искать вьюшку. Для этого переопределите какой нибудь адаптер. Посмотрите как это делается в примерах. Если вам надо дапустим изменять как то отображение информации - вот тогда уже надо работать с View.
Всё что вам надо - сделать свой адаптер унаследовавшись от андройдовского. Переопределить getItem getView getCount. Держать в адаптере ваш надбор данных. Получая клик мы получите позицию и сможете получить элемент.
1
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
24.11.2012, 20:44 [ТС] | 9 |
YAUHEN, спасибо за совет, прекрасно понимаю, что вы все верно говорите, но применить никак не могу. Вот банальный пример: есть список состоящий допустим из одного текстового поля и некоего признака по которому этот текст нужно например "жирнить". Всякое попробовал и ViewBinder переопределял и в адаптере setTextValue обрабатывал, никак не пойму как мне по значению одного элемента изменить значение другого Подскажите, а
Добавлено через 2 часа 16 минут А вот это я не понял. Как в адаптере держать набор данных. Переопределил getView и getItem но не понимаю, зачем они мне getView по ходу вызывается при построении списка, так?
0
|
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
|
|||||||||||
24.11.2012, 21:58 | 10 | ||||||||||
примерно так
ну а сам id в адаптере вытянуть примерно так
1
|
146 / 129 / 6
Регистрация: 29.07.2008
Сообщений: 506
|
|
24.11.2012, 22:37 | 11 |
допустим так.
1
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
26.11.2012, 14:37 [ТС] | 12 |
YAUHEN, а почему у вас в примере идентификатор для TextView назначен как @android:id/text1, а не просто @+id/text1?
0
|
146 / 129 / 6
Регистрация: 29.07.2008
Сообщений: 506
|
|
26.11.2012, 14:50 | 13 |
а почему бы и нет
как хотите так и делайте.
0
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
26.11.2012, 15:06 [ТС] | 14 |
Получился глюк. Покрасил некоторые позиции по определенному значению (true/false). Но при пролистывании ListView произвольно начинают закрашиваться другие позиции или стираться...к чему бы это???
0
|
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
|
|
26.11.2012, 19:42 | 15 |
0
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
26.11.2012, 20:46 [ТС] | 16 |
V0v1k, прошу прощения, но я вас не понял
0
|
146 / 129 / 6
Регистрация: 29.07.2008
Сообщений: 506
|
|
26.11.2012, 20:48 | 17 |
это к тому что андройд ресайклит вьюшки если вы используете адаптер вью. таким обрасзом вам конвернт вью может приходить не нулевой. и если вы допустим только зажирнили текст, подёргали лист туда сюда - вам будут приходить конвертвью с зажирёнными текствью и жирность надо обратно убирать если она там не нужна:
if(item.isWasAssingned()){ holder.fName.setTypeface(Typeface.DEFAULT_BOLD, Typeface.BOLD); holder.sName.setTypeface(Typeface.DEFAULT_BOLD, Typeface.BOLD); }else{ holder.fName.setTypeface(Typeface.DEFAULT_BOLD, Typeface.NORMAL); holder.sName.setTypeface(Typeface.DEFAULT_BOLD, Typeface.NORMAL ); }
1
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
26.11.2012, 21:45 [ТС] | 18 |
YAUHEN, да уже заметил, сделал else и все сработало. Спасибо за подсказки и пример.
0
|
146 / 129 / 6
Регистрация: 29.07.2008
Сообщений: 506
|
|
26.11.2012, 21:46 | 19 |
ну а вообще проёб мой, постоянно забываю про это
0
|
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
|
|
26.11.2012, 21:53 [ТС] | 20 |
не забыли бы, я бы не узнал о таком свойства дроида ... в жизни бы не догадался, что такое может быть
0
|
26.11.2012, 21:53 | |
26.11.2012, 21:53 | |
Помогаю со студенческими работами здесь
20
Клик по айтему элемента ListView Клик на элемент ListView отображение в pictureBox Клик по ListView загружаю картинку в PictureBox Как в ListView поймать клик по элементу? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |