我在整个互联网上搜索,但我没有找到任何东西,我可以使用。所以这是我的问题:我有一个在列表视图中工作的 xml 解析器,但我想将歌曲的 id 提供给其他活动,以便我可以显示它。
3 回答
您可以通过 usingsetTag()
和getTag()
方法在此处查看我的答案How to acces variable in arrayadapter getView from onItemClick
1.首先你需要OnItemClickListener()
方法ListView
2.然后,一旦您捕获了index of the row
您单击的内容,Intent()
就可以将其传递给另一个活动。
笔记:
For this to work, please make the Map as static, and please do map.clear() , everytime before loading the Map with parsed data.
3.当你去另一个Activity
时,我希望你的歌曲顺序Map
和里面ListView
是一样的,
因此,假设您按下 上的第二个项目ListView
,传递的索引将为 1,而在其他情况Activity
下只需调用第Map's
一个索引。
笔记:
添加标头会影响索引,ListView
因此更好地getItemIdAtPosition(arg)
在onClick()
方法中使用。
例如:
ListView lv = (ListView)findViewById(R.id.MyListView);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
i = new Intent(ProductActivity.this, ProductDetails.class);
i.putExtra("keyAapo", (int) lv.getItemIdAtPosition(arg2));
startActivity(i);
}
});
已经说过 Intent 额外传递选项,但是,如果您要传递大量数据,则始终可以使 XML 处理器可重用并仅传递 XML。它已经是一种编码格式