Android开发实现ListView部分布局监听的方法
本篇章节讲解Android开发实现ListView部分布局监听的方法。分享给大家供大家参考,具体如下: android listview 部分布局监听,很多人会想,直接在适配器里面,拿到那个布局,添加点击事件就可以了,不过我会告诉你的是这时候position是错乱的,是无法根据用户点击的位置来对每个item进行相应的逻辑操作。 同事给我想到的一个办法是:给每个布局提前设置一个tag,也就是绑定对应需要设置的数据,在点击事件的时候,会有一个view,根据该view重新拿到这个tag,取得里面的数据,就可以了,防止错乱的问题,成功解决,大概的代码如下,因为加密的需要,很多代码省略: // 适配器 public class OrAdapter extends BaseAdapter { @Override public int getCount() { return dataMap.size(); } @Override public Object getItem(int position) { return position; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position,View convertView,ViewGroup parent) { ViewHolder viewHolder = null; if (convertView == null) { viewHolder = new ViewHolder(); convertView = getActivity().getLayoutInflater().inflate( R.layout.activity_order_item,null); initViewHolder(convertView,viewHolder,position); } else { viewHolder = (ViewHolder) convertView.getTag(); } refreshViewHolder(position,viewHolder); return convertView; } private String getTag(String orderId,String instrument) { StringBuilder sb = new StringBuilder(); sb.append(orderId).append(";").append(instrument); return sb.toString(); } private void refreshViewHolder(int position,ViewHolder viewHolder) { // ------------------为了防止item被复用------------------ viewHolder.modeifyorder.setTag(getTag(orderid,instrument)); } private void initViewHolder(View convertView,ViewHolder viewHolder,final int position) { viewHolder.modeifyorder = (RelativeLayout) convertView .findViewById(R.id.modeifyorder); viewHolder.modeifyorder.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { int isman = (Integer) dataMap.get(position).get("ismanual"); int isprice = (Integer) dataMap.get(position).get( "ispricereached"); String tag = v.getTag().toString(); String tagVec[] = tag.split(";"); long orderId = Long.parseLong(tagVec[0]); String instStr = tagVec[1]; } }); convertView.setTag(viewHolder); } private class ViewHolder { TextView orderid; RelativeLayout modeifyorder; } } 有不明白的可以相互交流 更多关于Android相关内容感兴趣的读者可查看本站专题:《Android控件用法总结》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android数据库操作技巧总结》及《Android资源操作技巧汇总》 希望本文所述对大家Android程序设计有所帮助。 您可能感兴趣的文章:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |