package com.arrownock.opensource.arrownockers.wall;
import java.util.List;
import android.content.Context;
import android.util.DisplayMetrics;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.arrownock.opensource.arrownockers.R;
import com.loopj.android.image.SmartImageView;
public class WallTumblrListAdapter extends BaseAdapter {
private List<WallTumblrEntity> coll;
private Context ctx;
private LayoutInflater mInflater;
public WallTumblrListAdapter(Context context, List<WallTumblrEntity> coll) {
ctx = context;
this.coll = coll;
mInflater = LayoutInflater.from(context);
}
public int getCount() {
return coll.size();
}
public Object getItem(int position) {
return coll.get(position);
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
WallTumblrEntity entity = coll.get(position);
ViewHolder viewHolder = null;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.row_wall, null);
viewHolder = new ViewHolder();
viewHolder.ivTitle = (SmartImageView) convertView
.findViewById(R.id.iv_title);
viewHolder.tvTitle = (TextView) convertView
.findViewById(R.id.tv_title);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
DisplayMetrics metrics = ctx.getResources().getDisplayMetrics();
int width = metrics.widthPixels;
int result = width - 50 * 2;
LayoutParams lParams = viewHolder.ivTitle.getLayoutParams();
lParams.width = result;
lParams.height = result;
viewHolder.ivTitle.setLayoutParams(lParams);
if (entity.imageURLString != null) {
viewHolder.ivTitle.setImageUrl(entity.imageURLString);
} else {
viewHolder.ivTitle.setImageBitmap(null);
}
if (entity.title != null)
viewHolder.tvTitle.setText(entity.title);
convertView.setTag(R.id.lv_wall, entity.wallId);
return convertView;
}
static class ViewHolder {
public SmartImageView ivTitle;
public TextView tvTitle;
}
}