Я извлекаю несколько данных из базы данных, затем сохраняю их в hashmap и отображаю их в listview.
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_NAME, name);
map.put(TAG_ADDRESS, address);
map.put(TAG_VID, vid);
venueList.add(map);
Это значение, которое я хочу перейти на другую страницу.
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// getting values from selected ListItem
String name = ((TextView) view.findViewById(R.id.name)).getText().toString();
String address = ((TextView) view.findViewById(R.id.address)).getText().toString();
String vid = "NEED HELP HERE"
// Starting new intent
Intent in = new Intent(getApplicationContext(), SingleMenuItemActivity.class);
in.putExtra(TAG_NAME, name);
in.putExtra(TAG_ADDRESS, address);
in.putExtra(TAG_VID, vid);
startActivity(in);
}
Мне удается передать значение, отображаемое в TextView, но как передать VID, который не является TextView?
String vid = getListAdapter().getItem(position).toString();
Я пробовал это, но он показывал все данные. Как выбрать один конкретный VID?
Благодарю.
Вы можете поместить vid в пучок непосредственно из карты
in.putExtra(TAG_VID, map.get(TAG_VID));
HashMap<String, String> map = new HashMap<String, String>(); map = (HashMap<String, String>) getListAdapter().getItem(position);