package io.github.mthli.Ninja.View;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import io.github.mthli.Ninja.R;
import io.github.mthli.Ninja.Unit.BrowserUnit;
import io.github.mthli.Ninja.Unit.ViewUnit;
import org.askerov.dynamicgrid.BaseDynamicGridAdapter;
import java.util.List;
public class GridAdapter extends BaseDynamicGridAdapter {
private static class Holder {
TextView title;
ImageView cover;
}
private List<GridItem> list;
public List<GridItem> getList() {
return list;
}
private Context context;
public GridAdapter(Context context, List<GridItem> list, int columnCount) {
super(context, list, columnCount);
this.context = context;
this.list = list;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Holder holder;
View view = convertView;
if (view == null) {
view = LayoutInflater.from(context).inflate(R.layout.grid_item, parent, false);
holder = new Holder();
holder.title = (TextView) view.findViewById(R.id.grid_item_title);
holder.cover = (ImageView) view.findViewById(R.id.grid_item_cover);
view.setTag(holder);
} else {
holder = (Holder) view.getTag();
}
GridItem item = list.get(position);
holder.title.setText(item.getTitle());
holder.cover.setImageBitmap(BrowserUnit.file2Bitmap(context, item.getFilename()));
ViewUnit.setElevation(view, context.getResources().getDimensionPixelSize(R.dimen.elevation_1dp));
return view;
}
}