package com.novelbook.android.adapter; import android.content.Context; import android.graphics.Typeface; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.TextView; import com.novelbook.android.utils.Config; import com.novelbook.android.R; import com.novelbook.android.db.Chapter; import java.util.List; public class CatalogueAdapter extends BaseAdapter { private Context mContext; private List bookCatalogueList; private List bookCatalogueListCached; private Typeface typeface; private Config config; private int currentCharter = 0; public CatalogueAdapter(Context context, List bookCatalogueList ) { mContext = context; this.bookCatalogueList = bookCatalogueList; config = config.getInstance(); typeface = config.getTypeface(); } @Override public int getCount() { return bookCatalogueList.size(); } @Override public Object getItem(int position) { return bookCatalogueList.get(position); } @Override public long getItemId(int position) { return position; } public void setCharter(int charter){ currentCharter = charter; } public void setData(List bookCatalogueList){ this.bookCatalogueList = bookCatalogueList; } public void setCahedChapters(List listCached ){ bookCatalogueListCached =listCached; notifyDataSetChanged(); } @Override public View getView(int position, View convertView, ViewGroup parent) { LayoutInflater inflater = LayoutInflater.from(mContext); final ViewHolder viewHolder; if(convertView==null) { viewHolder= new ViewHolder(); convertView = inflater.inflate(R.layout.zcataloguelistview_item,null); viewHolder.catalogue_tv = (TextView)convertView.findViewById(R.id.catalogue_tv); viewHolder.catalogue_tv.setTypeface(typeface); viewHolder.getCatalogue_cache =(TextView)convertView.findViewById(R.id.catalogue_cache); viewHolder.getCatalogue_cache.setTypeface(typeface); // viewHolder.getCatalogue_cache.setTextSize( viewHolder.catalogue_tv.getTextSize()-2); viewHolder.getCatalogue_cache.setTextColor( mContext.getResources().getColor(R.color.light_gray)); convertView.setTag(viewHolder); }else { viewHolder = (ViewHolder)convertView.getTag(); } if (currentCharter == position+1){ viewHolder.catalogue_tv.setTextColor(mContext.getResources().getColor(R.color.colorPrimaryDark)); }else{ viewHolder.catalogue_tv.setTextColor(mContext.getResources().getColor(R.color.dark_gray)); } Chapter chapter = bookCatalogueList.get(position); viewHolder.catalogue_tv.setText(chapter.getChapterName()); viewHolder.getCatalogue_cache.setVisibility(View.GONE); if(bookCatalogueListCached.contains(chapter.getIndex())) { viewHolder.getCatalogue_cache.setVisibility(View.VISIBLE); } //Log.d("catalogue",bookCatalogueList.get(position).getBookCatalogue()); return convertView; } class ViewHolder { TextView catalogue_tv; TextView getCatalogue_cache; } }