Swati4star/Images-to-PDF

View on GitHub
app/src/main/java/swati4star/createpdf/adapter/WhatsNewAdapter.java

Summary

Maintainability
A
0 mins
Test Coverage
package swati4star.createpdf.adapter;

import android.content.Context;
import android.content.res.Resources;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

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

import butterknife.BindView;
import butterknife.ButterKnife;
import swati4star.createpdf.R;
import swati4star.createpdf.model.WhatsNew;

public class WhatsNewAdapter extends RecyclerView.Adapter<WhatsNewAdapter.WhatsNewViewHolder> {

    private final Context mContext;
    private final List<WhatsNew> mWhatsNewsList;

    public WhatsNewAdapter(Context context, ArrayList<WhatsNew> mWhatsNewsList) {
        this.mContext = context;
        this.mWhatsNewsList = mWhatsNewsList;
    }

    @NonNull
    @Override
    public WhatsNewViewHolder onCreateViewHolder(@NonNull ViewGroup mParent, int viewType) {
        View mView = LayoutInflater.from(mParent.getContext())
                .inflate(R.layout.item_whats_new, mParent, false);
        return new WhatsNewAdapter.WhatsNewViewHolder(mView);
    }

    @Override
    public void onBindViewHolder(@NonNull WhatsNewViewHolder holder, int position) {
        holder.tvDescription.setText(mWhatsNewsList.get(position).getDescription());
        holder.tvHeading.setText(mWhatsNewsList.get(position).getTitle());
        if (!mWhatsNewsList.get(position).getIcon().equals("")) {
            Resources resources = mContext.getResources();
            final int resourceId = resources.getIdentifier(mWhatsNewsList.get(position).getIcon(),
                    "drawable", mContext.getPackageName());
            holder.icon.setBackgroundResource(resourceId);
        }
    }

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

    class WhatsNewViewHolder extends RecyclerView.ViewHolder {

        @BindView(R.id.title)
        TextView tvHeading;
        @BindView(R.id.description)
        TextView tvDescription;
        @BindView(R.id.icon)
        ImageView icon;

        WhatsNewViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this, itemView);
        }

    }

}