package com.bestapp.yikuair.adapter;
import java.util.ArrayList;
import com.bestapp.yikuair.R;
import com.bestapp.yikuair.officialaccount.OfficialAccountFragment;
import com.bestapp.yikuair.officialaccount.SubActivity;
import com.bestapp.yikuair.utils.AccountInfomation;
import com.bestapp.yikuair.utils.UserInfo;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class SubscriptionAdapter extends BaseAdapter {
private ArrayList<AccountInfomation> mInfos;
private SubActivity mContext;
private int changeId;
public int getChangeId() {
return changeId;
}
public void setChangeId(int changeId) {
this.changeId = changeId;
}
public SubscriptionAdapter(SubActivity context,
ArrayList<AccountInfomation> infos, int itemHeight) {
this.mInfos = infos;
this.mContext = context;
}
@Override
public int getCount() {
return mInfos.size();
}
@Override
public Object getItem(int position) {
return mInfos.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
HoldView mHoldView;
mHoldView = new HoldView();
LayoutInflater inflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.view_subscription_item, null);
mHoldView.ico = (ImageView) convertView.findViewById(R.id.sub_ico_img);
mHoldView.name = (TextView) convertView.findViewById(R.id.sub_name);
mHoldView.sub = (ImageView) convertView.findViewById(R.id.sub_img);
convertView.setTag(mHoldView);
mHoldView.sub.setTag(position);
final AccountInfomation subscripitionInfo = (AccountInfomation) getItem(position);
if (subscripitionInfo.getHeadurl() != null
&& !subscripitionInfo.getHeadurl().equals("")) {
OfficialAccountFragment.instance.asyncImageLoader.loadBitmap(
mHoldView.ico, subscripitionInfo.getHeadurl(), 0);
} else {
mHoldView.ico.setImageResource(R.drawable.ico_boy);
}
mHoldView.name.setText(subscripitionInfo.getRealname());
if (subscripitionInfo.isSub()) {
mHoldView.sub.setImageResource(R.drawable.ico_add_pressed);
} else {
mHoldView.sub.setImageResource(R.drawable.ico_add_normal);
}
mHoldView.sub.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
setChangeId((Integer) v.getTag());
mContext.showRoundProcessDialog();
if (subscripitionInfo.isSub()) {
mContext.sendCancelOfficiaAccount(UserInfo.db_id,
subscripitionInfo.getId());
} else {
mContext.SendAddOfficialAccount(UserInfo.db_id,
subscripitionInfo.getId());
}
}
});
return convertView;
}
static class HoldView {
ImageView ico;
TextView name;
ImageView sub;
}
}