@TargetApi(Build.VERSION_CODES.LOLLIPOP) @Override public View getView(final int position, View convertView, ViewGroup viewGroup) { ViewHolder holder = null; ViewHolder1 holder1 = null; int type = getItemViewType(position); if (type == type0) { convertView = null; if (convertView == null || !convertView.getTag().getClass().equals(ViewHolder1.class)) { convertView = View.inflate(context, R.layout.fwithfloor_head, null); holder1 = new ViewHolder1(); holder1.serch = convertView.findViewById(R.id.fwithfloor_serch); holder1.group = (TextView) convertView.findViewById(R.id.fwithfloor_group); holder1.used = (TextView) convertView.findViewById(R.id.fwithfloor_used); holder1.pp = (TextView) convertView.findViewById(R.id.fwithfloor_pp); holder1.help = (TextView) convertView.findViewById(R.id.fwithfloor_help); convertView.setTag(holder1); } else { holder1 = (ViewHolder1) convertView.getTag(); } } else if (type == type1) { if (convertView == null || !convertView.getTag().getClass().equals(ViewHolder.class)) { holder = new ViewHolder(); convertView = View.inflate(context, R.layout.fwithfloor_item, null); holder.icon = (CircleImageView) convertView.findViewById(R.id.fwithfloor_item_icon); holder.name = (TextView) convertView.findViewById(R.id.fwithfloor_item_name); holder.tip = (TextView) convertView.findViewById(R.id.fwithfloor_item_tip); holder.content = (TextView) convertView.findViewById(R.id.fwithfloor_item_content); holder.bluebtn = convertView.findViewById(R.id.fwithfloor_item_bluebtn); holder.graybtn = convertView.findViewById(R.id.fwithfloor_item_graybtn); holder.bluetext = (TextView) convertView.findViewById(R.id.fwithfloor_item_bluetext); holder.blueimage = (ImageView) convertView.findViewById(R.id.fwithfloor_item_blueimage); holder.graytext = (TextView) convertView.findViewById(R.id.fwithfloor_item_graytext); holder.praise = (TextView) convertView.findViewById(R.id.fwithfloor_item_atten); holder.time = (TextView) convertView.findViewById(R.id.fwithfloor_item_time); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } } if (type == type0) { holder1.serch.setOnClickListener(this); holder1.group.setOnClickListener(this); holder1.used.setOnClickListener(this); holder1.pp.setOnClickListener(this); holder1.help.setOnClickListener(this); } else if (type == type1) { bitmapUtils.display(holder.icon, entities.get(position - 1).publishUserIcon); holder.name.setText(entities.get(position - 1).publishUserNickname); if ("0".equals(entities.get(position - 1).modelType)) { holder.content.setText("活动:" + entities.get(position - 1).detail); } else if ("1".equals(entities.get(position - 1).modelType)) { if ("0".equals(entities.get(position - 1).supplyType)) { holder.content.setText("转让:" + entities.get(position - 1).detail); } else { holder.content.setText("求购:" + entities.get(position - 1).detail); } } else if ("2".equals(entities.get(position - 1).modelType)) { if ("0".equals(entities.get(position - 1).supplyType)) { holder.content.setText("车主:" + entities.get(position - 1).detail); } else { holder.content.setText("乘客:" + entities.get(position - 1).detail); } } else if ("3".equals(entities.get(position - 1).modelType)) { if ("0".equals(entities.get(position - 1).supplyType)) { holder.content.setText("求帮:" + entities.get(position - 1).detail); } else { holder.content.setText("自荐:" + entities.get(position - 1).detail); } } holder.tip.setText(entities.get(position - 1).topic); holder.time.setText(entities.get(position - 1).createDate); // if ("0".equals(entities.get(position-1).modelType) || // !entities.get(position-1).publishUserId.equals(ShareDataTool.getUserId(context))) { holder.bluebtn.setBackgroundResource(R.drawable.blue_chat); holder.bluebtn.setClickable(true); holder.bluebtn.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { if (ToosUtils.CheckComInfo(context)) { if ("0".equals(entities.get(position - 1).modelType)) { if ("0".equals(entities.get(position - 1).isInGroup)) { Intent intent = new Intent(context, ChatActivity.class); MessageInfo messageInfo = new MessageInfo(); messageInfo.receiverHeadUrl = entities.get(position - 1).id; messageInfo.groupDynamicID = entities.get(position - 1).id; messageInfo.receiverImUserName = entities.get(position - 1).imGroupId; messageInfo.receiverNickName = entities.get(position - 1).groupName; messageInfo.receiverUserId = entities.get(position - 1).imGroupId; intent.putExtra("chatType", ChatActivity.CHATTYPE_GROUP); Bundle bundle = new Bundle(); bundle.putSerializable("info", messageInfo); intent.putExtras(bundle); context.startActivity(intent); } else { Message message = new Message(); message.what = HiGroupActivity.ADDGROUP; message.arg1 = position - 1; handler.sendMessage(message); } } else { Intent intent = new Intent(context, ChatActivity.class); MessageInfo messageInfo = new MessageInfo(); messageInfo.receiverHeadUrl = entities.get(position - 1).publishUserIcon; messageInfo.receiverImUserName = entities.get(position - 1).publishUserImUsername; messageInfo.receiverNickName = entities.get(position - 1).publishUserNickname; messageInfo.receiverUserId = entities.get(position - 1).publishUserId; messageInfo.senderHeadUrl = ShareDataTool.getIcon(context); messageInfo.senderImUserName = ShareDataTool.getImUsername(context); messageInfo.senderUserId = ShareDataTool.getUserId(context); messageInfo.senderNickName = ShareDataTool.getNickname(context); Bundle bundle = new Bundle(); bundle.putSerializable("info", messageInfo); intent.putExtras(bundle); context.startActivity(intent); } } } }); if ("1".equals(entities.get(position - 1).isInGroup) && "0".equals(entities.get(position - 1).modelType)) { if (ToosUtils.isStringEmpty(entities.get(position - 1).planPeopleNum)) { entities.get(position - 1).planPeopleNum = "0"; } if (ToosUtils.isStringEmpty(entities.get(position - 1).groupNum)) { entities.get(position - 1).groupNum = "0"; } if ("0".equals(entities.get(position - 1).applyState) && Integer.valueOf(entities.get(position - 1).planPeopleNum) <= Integer.valueOf(entities.get(position - 1).groupNum)) { holder.bluetext.setText("已关闭"); holder.blueimage.setImageResource(R.mipmap.end); holder.bluebtn.setBackgroundResource(R.drawable.gray_atten); holder.bluebtn.setClickable(false); holder.bluebtn.setEnabled(false); } else { holder.bluetext.setText("加入"); holder.blueimage.setImageResource(R.mipmap.add_chat); } } else { holder.bluetext.setText("聊聊"); holder.blueimage.setImageResource(R.mipmap.myfloor_speak); } if (!"0".equals(entities.get(position - 1).state)) { holder.bluetext.setText("已关闭"); holder.blueimage.setImageResource(R.mipmap.end); holder.bluebtn.setBackgroundResource(R.drawable.gray_atten); holder.bluebtn.setClickable(false); holder.bluebtn.setEnabled(false); } // } else { // holder.bluetext.setText("聊聊"); // holder.blueimage.setImageResource(R.mipmap.myfloor_speak); // holder.bluebtn.setBackgroundResource(R.drawable.gray_atten); // holder.bluebtn.setClickable(false); // } // holder.graybtn.setTag("graybtn"+position); // holder.graytext.setTag("graytext"+position); if (Constant.ATTEN_OK.equals(entities.get(position - 1).isAttention)) { holder.graybtn.setBackgroundResource(R.drawable.gray_attened); holder.graytext.setText("已关注"); } else { holder.graybtn.setBackgroundResource(R.drawable.gray_atten); holder.graytext.setText("关注"); } holder.graybtn.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { // if (ToosUtils.CheckComInfo(context)) { // if // (!ShareDataTool.getUserId(context).equals(entities.get(position - // 1).publishUserId)) { Message message = new Message(); message.what = WithFloorFragment.ATTEN; message.obj = position - 1; handler.sendMessage(message); // } else { // ToastUtils.displayShortToast(context, "不可以关注自己的发布!"); // } // } } }); holder.icon.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(context, ConstactActivity.class); intent.putExtra("id", entities.get(position - 1).publishUserId); intent.putExtra("name", entities.get(position - 1).publishUserNickname); context.startActivity(intent); } }); holder.praise.setTag("praise" + (position - 1)); holder.praise.setText(entities.get(position - 1).praiseNum); if (Constant.PRAISE_OK.equals(entities.get(position - 1).isPraise)) { holder.praise.setTextColor(Color.parseColor("#499EB8")); Drawable drawable = ContextCompat.getDrawable(context, R.mipmap.consult_atten_checked); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); holder.praise.setCompoundDrawables(drawable, null, null, null); } else { holder.praise.setTextColor(Color.parseColor("#B3B3B3")); Drawable drawable = ContextCompat.getDrawable(context, R.mipmap.consult_atten); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); holder.praise.setCompoundDrawables(drawable, null, null, null); } holder.praise.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { if (ToosUtils.CheckComInfo(context)) { Message message = new Message(); message.what = WithFloorFragment.PRAISE; message.obj = position - 1; handler.sendMessage(message); } } }); } return convertView; }