Blame view
app/src/main/java/com/dinhcv/lifelogpedometer/adapter/RankingAdapter.java
3.39 KB
7f095a929
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
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.model.structure.pojo.RankingInfo; import com.dinhcv.lifelogpedometer.network.ApiUtils; import com.dinhcv.lifelogpedometer.utils.Utils; import com.squareup.picasso.Picasso; import java.util.ArrayList; import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; /** * Created by Admin on 8/17/2017. */ public class RankingAdapter extends RecyclerView.Adapter<RankingAdapter.MyViewHolder> { private List<RankingInfo> mRankingInfoList = new ArrayList<>(); private Activity mActivity; public class MyViewHolder extends RecyclerView.ViewHolder { @BindView(R.id.tv_position) TextView mTvPosition; @BindView(R.id.imv_user_icon) ImageView mImvUserIcon; @BindView(R.id.tv_time) TextView mTvTime; @BindView(R.id.tv_steps) TextView mTvSteps; @BindView(R.id.tv_distance) TextView mTvDistance; @BindView(R.id.imv_position) ImageView mImvPosition; public MyViewHolder(View view) { super(view); ButterKnife.bind(this, view); } } public RankingAdapter(Activity activity, List<RankingInfo> list) { mActivity = activity; mRankingInfoList.clear(); mRankingInfoList.addAll(list); } public void updateData(List<RankingInfo> list) { mRankingInfoList.clear(); mRankingInfoList.addAll(list); } public void clearData() { mRankingInfoList.clear(); } @Override public RankingAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View itemView = LayoutInflater.from(parent.getContext()) .inflate(R.layout.layout_rank_row, parent, false); return new RankingAdapter.MyViewHolder(itemView); } @Override public void onBindViewHolder(RankingAdapter.MyViewHolder holder, int position) { RankingInfo rankingInfo = mRankingInfoList.get(position); holder.mTvPosition.setText(rankingInfo.getRank()+""); holder.mTvTime.setText(Utils.convertSecond2HourMinSecString(rankingInfo.getTime())); holder.mTvSteps.setText(rankingInfo.getSteps() + " 歩"); holder.mTvDistance.setText(rankingInfo.getDistance() + " km"); if (rankingInfo.getProfileImage() != null && !rankingInfo.getProfileImage().toString().isEmpty()) { Picasso.with(mActivity).load(ApiUtils.BASE_URL + rankingInfo.getProfileImage().toString()).into( holder.mImvUserIcon); } switch (rankingInfo.getRank()) { case 1: holder.mImvPosition.setBackground(Utils.getDrawableWrapper(mActivity, R.drawable.ic_first)); break; case 2: holder.mImvPosition.setBackground(Utils.getDrawableWrapper(mActivity, R.drawable.ic_second)); break; case 3: holder.mImvPosition.setBackground(Utils.getDrawableWrapper(mActivity, R.drawable.ic_third)); break; } } @Override public int getItemCount() { return mRankingInfoList.size(); } } |