学会了listview的使用之后远远不够,实际开发中也许还需要获取每个item的内容。
下面我就总结一下获取item的方法:
首先我们需要设置item点击监听事件:
ListView listuser = (ListView) findViewById(R.id.listuser);
listuser.setOnItemClickListener(new AdapterView.OnItemClickListener(){
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
ListView listuser = (ListView) findViewById(R.id.listuser);
HashMap<String,String> map=(HashMap<String,String>)listuser.getItemAtPosition(position);
String title=map.get("name");
Toast.makeText(MainActivity.this,"你点击了第" + title + "项",Toast.LENGTH_SHORT).show();
}
});
onItemClick的参数说明:
1. parent 相当于listview 适配器的一个指针,可以通过它来获得本身装着的一切东西,再通俗点就是说告诉你,你点的是Y,不是X ;onItemClick(AdapterView<?> parent, View view, int position, long id)
2. view 是你点当前 item的view的句柄,就是你可以用这个view,来获得b里的控件的id后操作控件;
3. position 是当前listview在本身适配器里的位置(生成listview时,适配器一个一个的做item,然后把他们按顺序排好队,在放到listview里,意思就是这个b是第position号做好的);
4.id 是b在listview 里的第几行的位置另外记录一下吐司的参数:
/*Toast.makeText(Context,String,Toast.LENGTH_SHORT).show(); 参数1:大概来说就是上下文对象,在哪个对象中显示吧,这个不知道怎么解释//例如yourActivity.this 参数2:你要显示的内容,这里你可以写点击了某个Item 参数3:显示的时间长度,LENGTH_SHORT显示比LENGTH_LONG短 .show是让这个土司显示出来*/