В вашей реализации слушателя у вас есть ссылка на View
, по которому щелкнули, и в случае itemClick
(или ExpandableList: groupClick
/ childClick
) у вас также есть положение базовых данных внутри вашего списка .
Так что просто используйте позицию, чтобы получить данные, по которым щелкнули, из структуры данных, которую вы использовали для заполнения списка (адаптер).
Обновление
Если у вас есть ListActivity
, в котором элемент dataList
содержит значения, отображаемые в списке, вы просто переопределяете его метод onListItemClick
:
/**
* The list of custom data you display in this activity
*/
private ArrayList<MyData> dataList;
@Override
protected void onListItemClick(ListView l, View v, int position, long id)
{
super.onListItemClick(l, v, position, id);
final MyData selectedValue = dataList.get(position);
//TODO: deal with this selectedValue
}
Документы API для onListItemClick
Этот метод будет вызываться, когда
пункт в списке выбран.
Подклассы должны переопределять.
Подклассы могут звонить
getListView (). getItemAtPosition (положение)
если им нужно получить доступ к данным
связан с выбранным элементом.
Параметры :
l
ListView, где щелчок
произошло
v
Вид, по которому щелкнули
ListView
position
Положение вида
в списке
id
Идентификатор строки элемента, который был
щелкнул
Полный пример вы можете найти на Android-е здесь и здесь .