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.SnsTopicInfo; import com.dinhcv.lifelogpedometer.network.ApiUtils; import com.dinhcv.lifelogpedometer.utils.Utils; import com.squareup.picasso.Picasso; import java.util.ArrayList; import java.util.Date; import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; /** * Created by Admin on 8/17/2017. */ public class SnsTopicAdapter extends RecyclerView.Adapter { private List mSnsTopicList = new ArrayList<>(); private Activity mActivity; public class MyViewHolder extends RecyclerView.ViewHolder { @BindView(R.id.imv_user_icon) ImageView mImvUserIcon; @BindView(R.id.tv_start_date) TextView mTvCreateDate; @BindView(R.id.tv_start_time) TextView mTvCreateTime; @BindView(R.id.tv_user_name) TextView mTvUsername; @BindView(R.id.tv_message) TextView mTvMessage; @BindView(R.id.tv_distance) TextView mTvDistance; @BindView(R.id.tv_duration) TextView mTvTime; public MyViewHolder(View view) { super(view); ButterKnife.bind(this, view); } } public SnsTopicAdapter(Activity activity, List list) { mActivity = activity; mSnsTopicList.clear(); mSnsTopicList.addAll(list); } public void updateData(List list) { mSnsTopicList.clear(); mSnsTopicList.addAll(list); } public void clearData() { mSnsTopicList.clear(); } @Override public SnsTopicAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View itemView = LayoutInflater.from(parent.getContext()) .inflate(R.layout.layout_sns_topic_row, parent, false); return new SnsTopicAdapter.MyViewHolder(itemView); } @Override public void onBindViewHolder(SnsTopicAdapter.MyViewHolder holder, int position) { SnsTopicInfo topic = mSnsTopicList.get(position); Date date = Utils.convertString2Date(topic.getCreatedAt()); if (topic.getProfileImage() != null && !topic.getProfileImage().toString().isEmpty()){ Picasso.with(mActivity).load(ApiUtils.BASE_URL+topic.getProfileImage().toString()).into( holder.mImvUserIcon); } holder.mTvCreateDate.setText(Utils.convertDate2DayString(date)+""); holder.mTvCreateTime.setText(Utils.convertDate2TimeString(date)+""); holder.mTvUsername.setText(topic.getUsername()+""); holder.mTvMessage.setText(topic.getTweetContent()+""); holder.mTvDistance.setText(topic.getDistance()+"m"); holder.mTvTime.setText(topic.getTime()+""); } @Override public int getItemCount() { return mSnsTopicList.size(); } }