效果图:
Activity类部分代码如下:
/*为listView添加监听。作用当用户点击该商品时,就把商品的ID传过去
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
lv.getPositionForView(position);
Intent intent=new Intent(ProductPlay.this,ProductDetailActivity.class);
intent.putExtra("id", vo.getId());
//跳转到新的activity
startActivity(intent);
}
});
布局文件部分代码(Item):
<TextView
android:visibility="visible"
android:id="@id/tv_id"
android:layout_width="10.0dp"
android:layout_height="wrap_content">
</TextView>
跪求大神!
问题:1、在Activity类怎么获取得到点击的Item呢?(红色部分:lv.getPositionForView(position,不懂怎么写下去了?)
2、在Activity类怎么获取得到用户点击的那个Item的ID呢?(红色部分:intent.putExtra("id", vo.getId());
------解决思路----------------------
listview有对应的adapter,adapter中装载了列表中要显示的数据list,利用点击事件中的position就可以得到了
item = list.get(position);
------解决思路----------------------
把你的数据适配器adapter代码贴出来
或者把你初始化listview的所有代码贴出来
如果你用了adapter那么应该有list,list.get(postion).getID();
------解决思路----------------------
List<Map<String,Object>> datas=product.getDatas();
public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
datas应该就是你的数据源吧,onItemClick的参数里面有个position
用datas.get(location)可以得到HashMap键值对,可以从里面拿到你要的id等信息