我知道有一组方法用于将数据从一个活动传递到下一个活动,但是如何使用列表视图在活动中对其进行建模?
示例:我有一个json对象,用于填充列表视图。每个列表项都有一个id。我想在点击时将id传递给下一个活动。我怎么知道listview的项目ID?我不确定如何将任意元数据附加到listview项目并立即抓取并传递它。
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();
}
}
答案 0 :(得分:4)
对Adapter getView()代码中的列表视图使用 setTag()和 getTag()属性来存储和检索数据。