SnsSearchAdapter.java 2.72 KB
package com.dinhcv.lifelogpedometer.adapter;

import android.app.Activity;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import com.dinhcv.lifelogpedometer.R;
import com.dinhcv.lifelogpedometer.activity.SnsFragment;
import com.dinhcv.lifelogpedometer.model.structure.pojo.SnsSearchInfo;
import com.dinhcv.lifelogpedometer.model.structure.pojo.SnsTopicInfo;

import java.util.ArrayList;
import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;

/**
 * Created by Admin on 8/17/2017.
 */

public class SnsSearchAdapter extends RecyclerView.Adapter<SnsSearchAdapter.MyViewHolder> {
    private List<SnsSearchInfo> mSnsSearchList = new ArrayList<>();
    private ItemClickListener mItemClickListener;
    private Activity mActivity;

    public class MyViewHolder extends RecyclerView.ViewHolder {
        @BindView(R.id.imv_user_icon) ImageView mImvUserIcon;
        @BindView(R.id.tv_title) TextView mTvTitle;
        View mRootView;

        public MyViewHolder(View view) {
            super(view);
            ButterKnife.bind(this, view);
            mRootView = view;
        }
    }

    public SnsSearchAdapter(Activity activity, List<SnsSearchInfo> list) {
        mActivity = activity;

        mSnsSearchList.clear();
        mSnsSearchList.addAll(list);
    }

    public void updateData(List<SnsSearchInfo> list) {
        mSnsSearchList.clear();
        mSnsSearchList.addAll(list);
    }
    public void clearData(){
        mSnsSearchList.clear();
    }
    public void setOnItemClickListener(ItemClickListener listener){
        this.mItemClickListener = listener;
    }

    @Override
    public SnsSearchAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View itemView = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.layout_sns_search_row, parent, false);

        return new SnsSearchAdapter.MyViewHolder(itemView);
    }

    @Override
    public void onBindViewHolder(SnsSearchAdapter.MyViewHolder holder, final int position) {
        SnsSearchInfo search = mSnsSearchList.get(position);
        holder.mTvTitle.setText(search.getGroupName());
        holder.mRootView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(mItemClickListener != null){
                    mItemClickListener.onItemClick(position);
                }
            }
        });
    }

    @Override
    public int getItemCount() {
        return mSnsSearchList.size();
    }

    public interface ItemClickListener{
        void onItemClick(int position);
    }
}