码迷,mamicode.com
首页 > 移动开发 > 详细

android分组数据适配器demo

时间:2014-11-24 11:58:07      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:android   数据适配器分组   

private class CheckedNameDeceiveInfoAdapter extends BaseAdapter{

		@Override
		public boolean isEnabled(int position) {
			if (position == 0) {
				return false;
			} else if (position == (mSuccessCheckNameInfos.size() + 1)) {
				return false;
			}
			return super.isEnabled(position);
		}
		@Override
		public int getCount() {
			// TODO Auto-generated method stub
			return mSuccessCheckNameInfos.size()+mFailCheckNameInfos.size()+2;
		}

		@Override
		public 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);
			}
				
			
			}
	
			
			
		
			
		

		@Override
		public long getItemId(int position) {
			
			return position;
		}
		
		@Override
		public 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;//标识点名是否成功
	}
	

android分组数据适配器demo

标签:android   数据适配器分组   

原文地址:http://blog.csdn.net/u014600432/article/details/41441527

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!