101 lines
3.3 KiB
Plaintext
101 lines
3.3 KiB
Plaintext
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<Chapter> bookCatalogueList;
|
|
private List<Integer> bookCatalogueListCached;
|
|
private Typeface typeface;
|
|
private Config config;
|
|
private int currentCharter = 0;
|
|
|
|
public CatalogueAdapter(Context context, List<Chapter> 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<Chapter> bookCatalogueList){
|
|
this.bookCatalogueList = bookCatalogueList;
|
|
}
|
|
|
|
public void setCahedChapters(List<Integer> 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;
|
|
}
|
|
}
|