Я понимаю, что существует набор методов, используемых для передачи данных от одного действия к следующему использованию, но как его моделировать изнутри с видом списка?
Пример. У меня есть объект json, который я использую для заполнения списка. Каждый элемент списка имеет идентификатор. Я хочу передать id на следующую активность при нажатии. Как узнать этот элемент списка? Я не был уверен, как присоединить произвольные метаданные к элементу списка и сразу же захватить его и передать его.
public class StuffListActivity extends ListActivity
{
private MyApplication application = null;
/**
* Called when the activity is first created.
*
* @param savedInstanceState the saved instance state
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
application = ((Application) getApplication());
Requestor req = new Requestor();
Application.log(listType.toString());
ArrayList<String> list = req.getStuff(application.getId(), listType);
adapter = new ArrayAdapter<String>(this,
R.layout.list, R.id.stuff, list);
setListAdapter(adapter);
}
protected void onListItemClick(ListView l, View v, int position, long id)
{
String item = (String) getListAdapter().getItem(position);
Toast.makeText(this, item + " selected", Toast.LENGTH_LONG).show();
}
}
Используйте свойство setTag() и getTag() для просмотра списка в коде адаптера getView().. для хранения и извлечения данных.