MyLaiFangAdapter.java 4.47 KB
package com.chudiangameplay.android.adapter;

import android.content.Context;
import android.content.Intent;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.chudiangameplay.android.R;
import com.chudiangameplay.android.interface_.CommCallBack;
import com.chudiangameplay.android.module_im.util.IM_DateUtil;
import com.chudiangameplay.android.responce.Get_ZujiResponce;
import com.chudiangameplay.android.ui.activity.UserDetailActivity;
import com.chudiangameplay.android.util.GlideUtil;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * Created by Administrator on 2018/8/22.
 */

public class MyLaiFangAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {

    Context mContext;
    List<Get_ZujiResponce.ZuJiInfo> list = new ArrayList<>();
    CommCallBack callBack;
    SimpleDateFormat sdf;

    public MyLaiFangAdapter(Context mContext, CommCallBack callBack) {
        this.mContext = mContext;
        this.callBack = callBack;
        sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    }

    public void setData(List<Get_ZujiResponce.ZuJiInfo> list) {
        this.list = list;
        notifyDataSetChanged();
    }

    public void addData(List<Get_ZujiResponce.ZuJiInfo> data) {
        if (list != null) {
            list.addAll(data);
        }
        notifyDataSetChanged();
    }


    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        LayoutInflater mInflater = LayoutInflater.from(mContext);
        ViewGroup viewGroup = (ViewGroup) mInflater.inflate(R.layout.item_zuji, null, false);
        ContentViewHolder holder = new ContentViewHolder(viewGroup);
        return holder;
    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
        ContentViewHolder viewHolder = (ContentViewHolder) holder;
        final Get_ZujiResponce.ZuJiInfo info = list.get(position);

        GlideUtil.displayImage(mContext, info.fromUserHeadUrl, viewHolder.iv_head, R.drawable.ico_im_default_head, 100);
        viewHolder.tv_nickname.setText(info.fromUserNickname);
        viewHolder.tv_text.setText("第" + info.count + "次访问了您的" + info.menusName);
        viewHolder.tv_time.setText(info.createTime);

        if (TextUtils.isEmpty(info.fromEmblemSimpleUrl)) {
            viewHolder.iv_badge.setVisibility(View.GONE);
        } else {
            viewHolder.iv_badge.setVisibility(View.VISIBLE);
            GlideUtil.displayImage(mContext, info.fromEmblemSimpleUrl, viewHolder.iv_badge, -1);
        }

        if (TextUtils.isEmpty(info.fromUserMemberEmblem)) {
            viewHolder.iv_vip.setVisibility(View.GONE);
        } else {
            viewHolder.iv_vip.setVisibility(View.VISIBLE);
            GlideUtil.displayImage(mContext, info.fromUserMemberEmblem, viewHolder.iv_vip, -1);
        }


        try {
            Date date = sdf.parse(info.updateTime);
            viewHolder.tv_time.setText(IM_DateUtil.getTimestampString(date));
        } catch (ParseException e) {
            e.printStackTrace();
            viewHolder.tv_time.setText(info.createTime);
        }
        viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(mContext, UserDetailActivity.class);
                intent.putExtra("uid", info.fromUserId);
                mContext.startActivity(intent);
            }
        });
    }

    @Override
    public int getItemCount() {
        return list == null ? 0 : list.size();
    }


    class ContentViewHolder extends RecyclerView.ViewHolder {
        ImageView iv_head, iv_badge, iv_vip;
        TextView tv_nickname, tv_text, tv_time;

        public ContentViewHolder(View itemView) {
            super(itemView);
            iv_head = (ImageView) itemView.findViewById(R.id.iv_head);
            tv_nickname = (TextView) itemView.findViewById(R.id.tv_nickname);
            tv_text = (TextView) itemView.findViewById(R.id.tv_text);
            tv_time = (TextView) itemView.findViewById(R.id.tv_time);
            iv_badge = itemView.findViewById(R.id.iv_badge);
            iv_vip = itemView.findViewById(R.id.iv_vip);
        }
    }
}