android分组数据适配器demo

来源:互联网 发布:广告宣传软件 编辑:程序博客网 时间:2024/05/29 14:09
private class CheckedNameDeceiveInfoAdapter extends BaseAdapter{@Overridepublic boolean isEnabled(int position) {if (position == 0) {return false;} else if (position == (mSuccessCheckNameInfos.size() + 1)) {return false;}return super.isEnabled(position);}@Overridepublic int getCount() {// TODO Auto-generated method stubreturn mSuccessCheckNameInfos.size()+mFailCheckNameInfos.size()+2;}@Overridepublic Object getItem(int position) {if(position==0){return position;}else if(position==mSuccessCheckNameInfos.size()+1){return position;}else if(position<=mSuccessCheckNameInfos.size()){//点名成功信息int newPosition=position-1;return mSuccessCheckNameInfos.get(newPosition);}else{//点名失败信息int newPosition=position-1-1-mSuccessCheckNameInfos.size();return mFailCheckNameInfos.get(newPosition);}}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {DeviceInfo info=null;if(position==0){TextView tv = new TextView(getApplicationContext());tv.setTextSize(18);tv.setTextColor(Color.BLUE);tv.setBackgroundResource(android.R.color.darker_gray);tv.setText("点名成功 (" + mSuccessCheckNameInfos.size() + "个)");return tv;}else if (position == (mSuccessCheckNameInfos.size() + 1)) {TextView tv = new TextView(getApplicationContext());tv.setTextSize(18);tv.setTextColor(Color.BLUE);tv.setBackgroundResource(android.R.color.darker_gray);tv.setText("点名失败 (" + mFailCheckNameInfos.size() + "个)");return tv; }else if(position<=mSuccessCheckNameInfos.size()){ //返回点名成功信息 info=mSuccessCheckNameInfos.get(position-1); }else { //点名失败信息 info=mFailCheckNameInfos.get(position-1-1-mSuccessCheckNameInfos.size()); }View view=null;ViewHolder2 holder=null;if(convertView!=null&& convertView instanceof RelativeLayout){view=convertView;holder=(ViewHolder2) view.getTag();}else{view=View.inflate(CheckNameActivity.this,R.layout.check_name_item,null);holder=new ViewHolder2();holder.head=(ImageView) view.findViewById(R.id.iv_head_check_name_success_fail);holder.tvName=(TextView) view.findViewById(R.id.tv_name);holder.tvMac=(TextView)view.findViewById(R.id.tv_addr_info);view.setTag(holder);}holder.tvName.setText(info.getmDeviceName());holder.tvMac.setText(info.getmDeviceMacAddr());return view;}}static class ViewHolder2{TextView tvName;//显示设备名TextView tvMac;//显示点名是否成功ImageView head;//标识点名是否成功}

1 0
原创粉丝点击