package com.codingbingo.fastreader.ui.adapter;
import android.content.Context;
import android.graphics.Color;
import android.graphics.drawable.GradientDrawable;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.codingbingo.fastreader.R;
import com.codingbingo.fastreader.manager.SettingManager;
import com.codingbingo.fastreader.model.eventbus.StyleChangeEvent;
import org.greenrobot.eventbus.EventBus;
import java.util.List;
/**
* Author: bingo
* Email: codingbingo@gmail.com
* By 2017/4/12.
* <p>
* 阅读背景设置
*/
public class ReadingBackgroundAdapter extends RecyclerView.Adapter<ReadingBackgroundAdapter.ViewHolder> {
private Context mContext;
private List<String> backgroundColorList;
public ReadingBackgroundAdapter(Context mContext, List<String> backgroundColorList) {
this.mContext = mContext;
this.backgroundColorList = backgroundColorList;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(mContext).inflate(R.layout.read_background_item, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
GradientDrawable gradientDrawable = (GradientDrawable) holder.readBackgroundColor.getBackground();
final String color = backgroundColorList.get(position);
gradientDrawable.setColor(Color.parseColor(color));
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SettingManager.getInstance().setReadMode(false);
SettingManager.getInstance().setReadBackground(color);
EventBus.getDefault().post(new StyleChangeEvent());
}
});
}
@Override
public int getItemCount() {
return backgroundColorList.size();
}
class ViewHolder extends RecyclerView.ViewHolder{
View readBackgroundColor;
public ViewHolder(View itemView) {
super(itemView);
readBackgroundColor = itemView.findViewById(R.id.read_background_color);
}
}
}