我怎样才能得到我点击的列表项数据?

问题描述:

我有一些ListView和SimpleAdapter我怎样才能得到我点击的列表项数据?

List<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>(); 

    HashMap<String, Object> map = new HashMap<String, Object>(); 
    map.put(ITEMTITLE, getString(R.string.broadcast_street_1_text)); 
    map.put(ITEMDESCR, getString(R.string.broadcast_request_1_text)); 
    dataList.add(map); 

    map = new HashMap<String, Object>(); 
    map.put(ITEMTITLE, getString(R.string.broascast_street_2_text)); 
    map.put(ITEMDESCR, getString(R.string.broadcast_request_2_text)); 
    dataList.add(map); 

    SimpleAdapter adapter = new SimpleAdapter(this, 
               dataList, 
               R.layout.broadcast_list_item, 
               new String[] {ITEMTITLE, ITEMDESCR}, 
               new int[] {R.id.broadcast_list_item_title, R.id.broadcast_list_item_descr}); 

    list.setAdapter(adapter); 

所以,当我在一些列表项点击我需要改变的活动。

 list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { 
      Intent intent = new Intent(getParent(), BroadcastDataActivity.class); 
      intent.putExtra("street", arg0.getItemAtPosition(position).toString()); 
      intent.putExtra("time", arg0.getItemAtPosition(position).toString()); 
      parentActivity = (WorldTaxiActivityGroup) getParent(); 
      parentActivity.startChildActivity("BroadcastData", intent); 
     } 
    }); 

但arg0.getItemAtPosition(位置)只返回数据的对象 请帮助我,我怎样才能得到的数据正确地将?

+0

我很困惑,这是什么的B/W'的data'对象和'正确data' – 2012-02-11 11:56:25

+0

MMM的区别......这是一个对象(类)..我如何从中获取数据? – user1128677 2012-02-11 12:13:05

使用

list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { 
      Intent intent = new Intent(getParent(), BroadcastDataActivity.class); 
      HashMap<String, Object> item = dataList.get(position); 
      intent.putExtra("street", item.get(ITEMTITLE).toString(); 
      intent.putExtra("time", item.get(ITEMDESCR).toString().toString()); 
      parentActivity = (WorldTaxiActivityGroup) getParent(); 
      parentActivity.startChildActivity("BroadcastData", intent); 
     } 
    }); 
+0

谢谢,完美的工作!) – user1128677 2012-02-11 12:07:34

+0

虽然我的问题有点不同,但它给了我线索得到它解决 – Passion 2013-06-09 19:34:02

public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { 
      Intent intent = new Intent(getParent(), BroadcastDataActivity.class); 
      intent.putExtra("street", dataList.get(position).get("ITEMTITLE")); 
      intent.putExtra("time", dataList.get(position).get("ITEMDESCR")); 
      parentActivity = (WorldTaxiActivityGroup) getParent(); 
      parentActivity.startChildActivity("BroadcastData", intent); 
     } 
    }); 
+0

谢谢!那也工作) – user1128677 2012-02-11 12:07:53