您的位置:首页 > 移动开发 > Android开发

android中ListView控件&&onItemClick点击事件

2013-07-11 15:14 363 查看
listView= (ListView) this.findViewById(R.id.listview);

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

        UserService us = new UserService(this);

        List<User> users = us.getScrollDate(0, 10);

        for(User u : users){

         HashMap<String,String> map = new HashMap<String, String>();

         map.put("userid", String.valueOf(u.getUserid()));

         map.put("name", u.getName());

         map.put("age", String.valueOf(u.getAge()));

         data.add(map);

        }

        SimpleAdapter adapter = new SimpleAdapter(this,data,R.layout.useritem,new String[]{"userid","name","age"},new int[]{R.id.userid,R.id.name,R.id.age});

        

       listView.setAdapter(adapter);

        listView.setOnItemClickListener(new OnItemClickListener(){

   @SuppressWarnings("unchecked")

   @Override

   public void onItemClick(AdapterView<?> parent, View view,

     int position, long id) {

    ListView listView = (ListView)parent;

    HashMap<String, String> map = (HashMap<String, String>) listView.getItemAtPosition(position);

    String userid = map.get("userid");

    String name = map.get("name");

    String age = map.get("age");

    Toast.makeText(SQLiteCRUDActivity.this, userid +" , "+ name +" , "+ age ,Toast.LENGTH_LONG).show();

   }

        });

另一个例子:

public class ProductListAdapter extends BaseAdapter {
private Context context;
private List<Product> listData;
public ProductListAdapter(Context context) {
this.context = context;
}
public void setData(List<Product> dataList) {
this.listData = dataList;
}
@Override
public int getCount() {
return listData.size();
}
@Override
public Product getItem(int position) {
return listData.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int posotion, View convertView, ViewGroup arg2) {

。。。。。

}

}

@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
// TODO Auto-generated method stub
Product data = (Product)parent.getItemAtPosition(position);
Log.v("itemclick",data.goods_id);
}

方法介绍:


AdapterView的方法


public Object getItemAtPosition (int
position)

Added in API level 1

Gets the data associated with the specified position in the list.

Parameters
positionWhich data to get
Returns
The data associated with the specified position in the list
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐