获取到点击的那一行,然后根据你listView里面怎样放进数据,那就怎样取出。

解决方案 »

  1.   

    可以做一个数据相对应的pojo类  列如Student.java  设置姓名、学号、成绩私有属性的set、get方法,重写toString方法public class ListViewTest extends Activity{
    private ListView lv;
    private List<Student> stus; @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    stus=new ArrayList<Student>();
    stus.add(new Student(1001,"zhangsan",20,85));
    stus.add(new Student(1002,"lisi",21,87.5));
    stus.add(new Student(1003,"wangwu",22,88));
    stus.add(new Student(1004,"zhaoliu",20,75));
    stus.add(new Student(1005,"qianqi",21,97.5));
    stus.add(new Student(1006,"liuba",22,68));

    setContentView(R.layout.list_view_test);

    lv=(ListView)findViewById(R.id.list_view_01);

    List<Map<String,Object>> data=new ArrayList<Map<String,Object>>();
    for(int i=0;i<stus.size();i++){
    Map<String,Object> map=new HashMap<String,Object>();
    map.put("s_id", stus.get(i).getId());
    map.put("s_name", stus.get(i).getName());
    map.put("s_age", stus.get(i).getAge());
    map.put("s_score", stus.get(i).getScore());
    data.add(map);
    }

    SimpleAdapter adapter=new SimpleAdapter(this,data,R.layout.list_view_item_02,new String[]{"s_id","s_name","s_age","s_score"},new int[]{R.id.s_id_text_2,R.id.s_name_text_2,R.id.s_age_text_2,R.id.s_score_text_2});
    lv.setAdapter(adapter);

    lv.setOnItemClickListener(new OnItemClickListener(){ @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
    long arg3) {
    Intent it=new Intent(ListViewTest.this,StudentDescribeActivity.class);
    it.putExtra("student", stus.get(arg2));
    startActivity(it);

    }

    });

    }
    }
      

  2.   

    已经找到解决办法了,用getItemAtPosition()
      

  3.   

    typedef_god 此处省略三千字。