package com.wise.article;
import java.util.List;
import com.wise.pubclas.Constant;
import com.wise.wawc.R;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.TextView;
public class ArticleAdapter extends BaseAdapter{
Context context;
List<ArticleData> articleDatas;
LayoutInflater mInflater;
public ArticleAdapter(Context context,List<ArticleData> articleDatas){
this.context = context;
this.articleDatas = articleDatas;
mInflater = LayoutInflater.from(context);
}
@Override
public int getCount() {
return articleDatas.size();
}
@Override
public Object getItem(int position) {
return articleDatas.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.item_article, null);
holder = new ViewHolder();
holder.tv_name = (TextView) convertView.findViewById(R.id.tv_name);
holder.tv_content = (TextView) convertView.findViewById(R.id.tv_content);
holder.iv_logo = (ImageView)convertView.findViewById(R.id.iv_logo);
holder.gv_pic = (GridView)convertView.findViewById(R.id.gv_pic);
convertView.setTag(holder);
}else{
holder = (ViewHolder) convertView.getTag();
}
ArticleData articleData = articleDatas.get(position);
holder.tv_name.setText(articleData.getName());
holder.tv_content.setText(articleData.getContent());
String logo = Constant.userIconPath + articleData.getCust_id() + ".jpg";
Bitmap bitmap = BitmapFactory.decodeFile(logo);
if(bitmap != null){
holder.iv_logo.setImageBitmap(bitmap);
}else{
holder.iv_logo.setImageResource(R.drawable.body_nothing_icon);
}
holder.gv_pic.setAdapter(new PicAdapter(articleData.getPicDatas()));
return convertView;
}
private class ViewHolder {
TextView tv_name,tv_content;
ImageView iv_logo;
GridView gv_pic;
}
public class PicAdapter extends BaseAdapter {
LayoutInflater mInflater = LayoutInflater.from(context);
List<PicData> picDatas;
public PicAdapter(List<PicData> picDatas){
this.picDatas = picDatas;
}
@Override
public int getCount() {
return picDatas.size();
}
@Override
public Object getItem(int position) {
return picDatas.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) {
convertView = mInflater.inflate(R.layout.item_article_pic, null);
holder = new ViewHolder();
holder.iv_pic = (ImageView) convertView.findViewById(R.id.iv_pic);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
PicData picData = picDatas.get(position);
String small_pic = picData.getSmall_pic();
small_pic = small_pic.substring((small_pic.lastIndexOf("/") + 1), small_pic.length());
small_pic = Constant.VehiclePath + small_pic;
Bitmap bitmap = BitmapFactory.decodeFile(small_pic);
if(bitmap != null){
holder.iv_pic.setImageBitmap(bitmap);
}else{
holder.iv_pic.setImageResource(R.drawable.body_nothing_icon);
}
return convertView;
}
private class ViewHolder {
ImageView iv_pic;
}
}
OnArticleListener onArticleListener;
public void setOnArticleListener(OnArticleListener onArticleListener){
this.onArticleListener = onArticleListener;
}
public interface OnArticleListener{
public abstract void doSomeThint(int postion);
}
}