Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
alexvinn
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
#1

Получить из ListView адаптера значение в OnItemClickListener - Программирование Android

23.05.2014, 17:35. Просмотров 1423. Ответов 6
Метки нет (Все метки)

В OnItemClickListener передается заполненый адаптер и номер позиции.
Как вытянуть из него значение объекта ?

Java
1
2
3
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Object aa = parent.getItemAtPosition(position);
}
т.е. в "аа" у меня нужный объект.
как из него вытянуть значение ключа KEY_LINK ?
или я что-то не так делаю ?

Хелп, плз.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2014, 17:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Получить из ListView адаптера значение в OnItemClickListener (Программирование Android):

В ListView не работает OnItemClickListener - Программирование Android
Здравствуйте, Впервые попался на такую проблему, что в ListView не работает OnItemClickListener. При клике на элемент списка, в...

Не могу заставить OnItemClickListener, ловить нажатие на элемент списка ListView - Программирование Android
Пишу простенькое приложение по сбору цен на разные товары, сейчас пытаюсь оптимизировать часть кода который работает со списком, когда...

Получить id вместо position в OnItemClickListener - Программирование Android
Здравствуйте. Хотел для себя создать справочник, для чего в сети нашел пример, который я немного дополнил и в принципе он рабочий: ...

Неадекватное поведение адаптера ListView - Программирование Android
Собственно есть кастом-адаптер. В него приходят два массива с данными. В dates находится даты в формате &quot;29.05.15&quot;. В photos ссылки на...

Нажатием на пункт списка в ListView получить значение - Программирование Android
Как при нажатии на пункт списка в ListView получить то что там написано (написана одна строчка). Пробую так, но выводит адрес ссылки: ...

Не выводиться информация в ListView с использованием адаптера - Программирование Android
У меня есть три класса:t_table, List_Time_Table, and TimeAdapter. Суть в том, что в TimeAdapter я создал и настроил свой адаптер: public...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Netscape
372 / 359 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
23.05.2014, 17:43 #2
Java
1
parent.getAdapter().getItem(position);
0
alexvinn
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
23.05.2014, 17:43  [ТС] #3
объект - itemList.add(map); в нем значение с ключом KEY_LINK
0
Netscape
372 / 359 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
23.05.2014, 17:46 #4
Java
1
((YourObject)((YourAdapter)parent.getAdapter()).getItem(position)).get(KEY_LINK);
0
alexvinn
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
23.05.2014, 18:04  [ТС] #5
делаю так -
Java
1
Log.d("myLogs", parent.getAdapter()).getItem(position).get("KEY_LINK");
но это не строка пишет, хотя там - строка.

UPD вернее пишет что .get не определен для object

Добавлено через 8 минут
Java
1
2
String ss;
ss = ((list)((adapter)parent.getAdapter()).getItem(position)).get("KEY_LINK");
adapter cannot be resolved to a type
0
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
23.05.2014, 19:18 #6
Java
1
((Имя итема)parent.getAdapter().getItem(position)).get(...
0
alexvinn
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
23.05.2014, 22:17  [ТС] #7
String sss = ((itemList)parent.getAdapter().getItem(position)).get("link");

itemList cannot be resolved to a type

itemList это оно ??

ArrayList<HashMap<String, String>> itemList = new ArrayList<HashMap<String, String>>();

Добавлено через 10 минут
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
        list.setOnItemClickListener(new OnItemClickListener() {
 
            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {
 
                String sss = ((itemList) parent.getAdapter().getItem(position)).get("link");
 
            }
        });
 
        return rootView;
    }
itemList cannot be resolved to a type

ArrayList<HashMap<String, String>> itemList = new ArrayList<HashMap<String, String>>();

Методы адаптера -

public int getCount() {
return data.size();
}

public Object getItem(int position) {
return position;
}

public long getItemId(int position) {
return position;
}

Добавлено через 1 час 36 минут
Хелп, плз...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2014, 22:17
Привет! Вот еще темы с ответами:

С помощью адаптера добавить два xml-я в listView - Программирование Android
Есть два .xml &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; ...

OnItemClickListener - Программирование Android
Необходимо при клике по Item ListView изменить этот итем, решил подменять его xml файл разметки. Завел массив boolean mExtendItem; ...

Получить текст из ListView - Программирование Android
Всем привет, возникла такая необходимость получить текст из listview.Помогите пожалуста

Получить количество строк в TextView (ListView) - Программирование Android
привет всем. уже очень давно никак не могу получить количество строк в TextView который находится в ListView. каждый итем - TextView. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.05.2014, 22:17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru