package com.threeH.MyExhibition.adapters;
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.ImageView;
import android.widget.TextView;
import com.threeH.MyExhibition.R;
import com.threeH.MyExhibition.entities.Exhibition;
import com.threeH.MyExhibition.listener.AttentionClickListener;
import com.threeH.MyExhibition.tools.*;
import java.util.List;
public class ExhibitionListAdapter extends BaseAdapter {
private List<Exhibition> data;
private LayoutInflater mInflater;
private Context context;
private String status;
private String token;
Typeface typeface;
Typeface typeface_bold;
public ExhibitionListAdapter(Context context, List<Exhibition> data, String token) {
this.data = data;
mInflater = LayoutInflater.from(context);
this.context = context;
typeface = MSYH.getInstance(context.getApplicationContext()).getNormal();
typeface_bold = MSYH.getInstance(context.getApplicationContext()).getBold();
this.token = token;
MyExhibitionListUtil.getInstance(context).initMyExhiibitonList();
}
@Override
public int getCount() {
return data.size();
}
@Override
public Object getItem(int position) {
return data.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = this.mInflater.inflate(R.layout.head_page_enroll_item, null);
holder.mEnrollAttention = (ImageView) convertView.findViewById(R.id.imageview_attention);
holder.mExhibitionTheme = (TextView) convertView.findViewById(R.id.exhibition_theme);
holder.mExhibitionDate = (TextView) convertView.findViewById(R.id.exhibition_date);
holder.mExhibitionAddress = (TextView) convertView.findViewById(R.id.exhibition_address);
holder.mExhibitionSponser = (TextView) convertView.findViewById(R.id.exhibition_sponsor);
holder.mExhibitionIcon = (ImageView) convertView.findViewById(R.id.imageview_icon);
holder.mEnrollMessage = (ImageView) convertView.findViewById(R.id.message_icon);
holder.mExhibitionTheme.setTypeface(typeface_bold);
holder.mExhibitionDate.setTypeface(typeface);
holder.mExhibitionAddress.setTypeface(typeface);
holder.mExhibitionSponser.setTypeface(typeface);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
holder.mEnrollAttention.setImageBitmap(null);
holder.mExhibitionIcon.setImageBitmap(null);
holder.mEnrollAttention.setPadding(0, 0, 0, 0);
holder.mEnrollMessage.setVisibility(View.GONE);
holder.mEnrollAttention.setOnClickListener(null);
}
String exKey = data.get(position).getExKey();
holder.mExhibitionTheme.setText(data.get(position).getName());
holder.mExhibitionDate.setText(data.get(position).getDate());
holder.mExhibitionAddress.setText(data.get(position).getAddress());
holder.mExhibitionSponser.setText(data.get(position).getOrganizer());
ImageURLUtil.loadImage(Tool.makeExhibitionIconURL(exKey),
holder.mExhibitionIcon);
status = data.get(position).getApplied();
final int i = position;
if(!MyExhibitionListUtil.getInstance(context).isMyExhibiton(data.get(position).getExKey())){
holder.mEnrollAttention.setImageResource(R.drawable.attention_font_btn);
holder.mEnrollAttention.setOnClickListener(
new AttentionClickListener(context,data.get(i)));
}else{
holder.mEnrollAttention.setImageResource(R.drawable.attentioned);
}
int count = Integer.valueOf(data.get(position).getCount());
if(count > 0){
holder.mEnrollMessage.setVisibility(View.VISIBLE);
}
return convertView;
}
public class ViewHolder {
ImageView mExhibitionIcon;
TextView mExhibitionTheme;
TextView mExhibitionDate;
TextView mExhibitionAddress;
TextView mExhibitionSponser;
ImageView mEnrollAttention;
ImageView mEnrollMessage;
}
}