@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(ViewHolder.class)) { convertView = View.inflate(context, R.layout.groupdetail_head, null); holder = new ViewHolder(); holder.icon = (CircleImageView) convertView.findViewById(R.id.groupdetail_icon); holder.name = (TextView) convertView.findViewById(R.id.groupdetail_name); holder.address = (TextView) convertView.findViewById(R.id.groupdetail_address); holder.num = (TextView) convertView.findViewById(R.id.groupdetail_num); holder.time = (TextView) convertView.findViewById(R.id.groupdetail_time); holder.content = (TextView) convertView.findViewById(R.id.groupdetail_content); holder.tip = (TextView) convertView.findViewById(R.id.groupdetail_tip); holder.join = (TextView) convertView.findViewById(R.id.groupdetail_join); holder.menu_lin = (LinearLayout) convertView.findViewById(R.id.groupdetail_menu_lin); holder.replay = (ImageView) convertView.findViewById(R.id.groupdetail_replay); holder.parimage = (ImageView) convertView.findViewById(R.id.groupdetail_parimage); holder.gridView = (MyGridView) convertView.findViewById(R.id.groupdetail_grid); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } } else if (type == type1) { if (convertView == null || !convertView.getTag().getClass().equals(ViewHolder1.class)) { convertView = View.inflate(context, R.layout.groupdetail_item, null); holder1 = new ViewHolder1(); holder1.icon = (CircleImageView) convertView.findViewById(R.id.groupdetail_item_icon); holder1.name = (TextView) convertView.findViewById(R.id.groupdetail_item_name); holder1.content = (TextView) convertView.findViewById(R.id.groupdetail_item_content); holder1.time = (TextView) convertView.findViewById(R.id.groupdetail_item_time); holder1.reply = (TextView) convertView.findViewById(R.id.groupdetail_item_reply); holder1.del = (TextView) convertView.findViewById(R.id.groupdetail_item_del); convertView.setTag(holder1); } else { holder1 = (ViewHolder1) convertView.getTag(); } } if (type == type0) { if (!entity.publishUserIcon.equals(holder.icon.getTag())) { holder.icon.setTag(entity.publishUserIcon); bitmapUtils.display(holder.icon, entity.publishUserIcon); } // bitmapUtils.display(holder.icon, entity.publishUserIcon); holder.name.setText(entity.publishUserNickname); holder.address.setText(entity.locationName); holder.tip.setText(entity.topic); holder.num.setText("参团人数:" + entity.groupNum + "/" + entity.planPeopleNum); holder.time.setText("截止日期:" + entity.endDate); holder.content.setText(entity.detail); holder.join.setEnabled(true); holder.join.setClickable(true); if ("0".equals(entity.isInGroup)) { holder.join.setText("已参加进群聊"); } else { holder.join.setText("参加"); try { if ("0".equals(entity.applyState) && Integer.valueOf(entity.planPeopleNum) <= Integer.valueOf(entity.groupNum)) { holder.join.setText("活动关闭"); holder.join.setEnabled(false); holder.join.setClickable(false); } if (!"0".equals(entity.state)) { holder.join.setText("活动关闭"); holder.join.setEnabled(false); holder.join.setClickable(false); } } catch (Exception e) { } } holder.join.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (ToosUtils.CheckComInfo(context)) { handler.sendEmptyMessage(1112); } } }); holder.icon.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(context, ConstactActivity.class); intent.putExtra("id", entity.publishUserId); intent.putExtra("name", entity.publishUserNickname); context.startActivity(intent); } }); List<User> userList = entity.praiseUser; if (userList == null) { userList = new ArrayList<>(); } GroupDetailGridViewAdapter gridAdapter = new GroupDetailGridViewAdapter(context, userList); holder.gridView.setAdapter(gridAdapter); if (userList.size() == 0) { holder.parimage.setVisibility(View.INVISIBLE); } else { holder.parimage.setVisibility(View.VISIBLE); } holder.replay.setTag("pppp" + position); rep = holder.replay; holder.replay.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (ToosUtils.CheckComInfo(context)) { if (menuWindow == null || menuWindow.isShowing() == false) { menu_press(); } else { menuWindow.dismiss(); } } } }); } else if (type == type1) { if (!entities.get(position - 1).publishUserIcon.equals(holder1.icon.getTag())) { holder1.icon.setTag(entities.get(position - 1).publishUserIcon); bitmapUtils.display(holder1.icon, entities.get(position - 1).publishUserIcon); } if (ShareDataTool.getUserId(context).equals(entities.get(position - 1).publishUserId)) { entities.get(position - 1).publishUserNickname = "我"; } if (ShareDataTool.getUserId(context).equals(entities.get(position - 1).targetUserId)) { entities.get(position - 1).targetUserNickname = "我"; } if (ToosUtils.isStringEmpty(entities.get(position - 1).parentId) || entities.get(position - 1).parentId.equals(entity.id)) { holder1.name.setText(entities.get(position - 1).publishUserNickname); } else { holder1.name.setText( Html.fromHtml( entities.get(position - 1).publishUserNickname + "\u2000<font color=\"#0076FF\">回复</font>\u2000" + entities.get(position - 1).targetUserNickname)); } // if (ToosUtils.isStringEmpty(entities.get(position-1).targetUserId)){ // holder1.name.setText(entities.get(position - 1).publishUserNickname); // }else{ // holder1.name.setText(entities.get(position - // 1).publishUserNickname+"\u2000回复\u2000"+entities.get(position-1).targetUserNickname); // } if (ShareDataTool.getUserId(context).equals(entities.get(position - 1).publishUserId)) { holder1.del.setVisibility(View.VISIBLE); holder1.del.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (ToosUtils.CheckComInfo(context)) { String temp = "是否删除该评论?"; if (ToosUtils.isStringEmpty(entities.get(position - 1).targetUserId)) { temp = "是否删除该评论?"; } else { temp = "是否删除该回复?"; } CustomeDialog dialog = new CustomeDialog(context, handler, temp, position - 1, -2, null); // Message message=new Message(); // message.what=1009; // message.arg1=(position-1); // handler.sendMessage(message); } } }); } else { holder1.del.setVisibility(View.GONE); } holder1.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); } }); holder1.content.setText(entities.get(position - 1).content); holder1.time.setText(entities.get(position - 1).createDate); holder1.reply.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { if (ToosUtils.CheckComInfo(context)) { Message message = new Message(); message.what = 1005; message.arg1 = (position - 1); handler.sendMessage(message); } } }); } return convertView; }