package com.fastaccess.ui.adapter;
import android.content.Context;
import android.support.annotation.NonNull;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import com.fastaccess.R;
import com.fastaccess.data.dao.model.Setting;
import com.fastaccess.helper.InputHelper;
import com.fastaccess.ui.widgets.FontTextView;
import com.fastaccess.ui.widgets.ForegroundImageView;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* Created by JediB on 5/12/2017.
*/
public class SettingsAdapter extends BaseAdapter {
private Setting[] settings;
private final LayoutInflater inflater;
public SettingsAdapter(@NonNull Context context, @NonNull Setting[] settings) {
this.settings = settings;
this.inflater = LayoutInflater.from(context);
}
@Override public int getCount() {
return settings.length;
}
@Override public Setting getItem(int position) {
return settings[position];
}
@Override public long getItemId(int position) {
return position;
}
@Override public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
View row = convertView;
if (row == null) {
row = inflater.inflate(R.layout.icon_row_item, parent, false);
viewHolder = new ViewHolder(row);
row.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) row.getTag();
}
viewHolder.title.setText(settings[position].getTitle());
viewHolder.image.setImageResource(settings[position].getImage());
if (!InputHelper.isEmpty(settings[position].getSummary())) {
viewHolder.summary.setText(settings[position].getSummary());
viewHolder.summary.setVisibility(View.VISIBLE);
} else {
viewHolder.summary.setVisibility(View.GONE);
}
return row;
}
static class ViewHolder {
@BindView(R.id.iconItemImage) ForegroundImageView image;
@BindView(R.id.iconItemTitle) FontTextView title;
@BindView(R.id.iconItemSummary) FontTextView summary;
ViewHolder(View view) {ButterKnife.bind(this, view);}
}
}