pda/zhuike/.svn/pristine/f3/f325e364c0e8ae079f95764fa23...

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;
}
}