/**
*
*/
package tk.djcrazy.MyCC98.adapter;
import java.util.List;
import tk.djcrazy.MyCC98.R;
import tk.djcrazy.libCC98.data.BoardStatus;
import android.app.Activity;
import android.util.DisplayMetrics;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
/**
* @author DJ
* @author zsy
*/
public class SearchBoardListAdapter extends BaseItemListAdapter<BoardStatus> {
private int dispWidth = 480;
public final class ListItemView {
public TextView boardName;
public TextView postNum;
public ImageView postNumLine;
}
public SearchBoardListAdapter(Activity context,
List<BoardStatus> currentResult) {
super(context, currentResult);
this.context = context;
DisplayMetrics metric = new DisplayMetrics();
context.getWindowManager().getDefaultDisplay().getMetrics(metric);
dispWidth = metric.widthPixels;
}
public void setBoardList(List<BoardStatus> list) {
setItems(list);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ListItemView listItemView = null;
BoardStatus entity = items.get(position);
if (convertView == null) {
listItemView = new ListItemView();
convertView = inflater.inflate(
R.layout.search_result_item, null);
} else {
listItemView = (ListItemView) convertView.getTag();
}
// 获取控件对象
listItemView.boardName = (TextView) convertView
.findViewById(R.id.search_result_board_name);
listItemView.postNum = (TextView) convertView
.findViewById(R.id.search_result_post_number_today);
listItemView.postNumLine = (ImageView) convertView
.findViewById(R.id.post_num_line);
listItemView.boardName.setText(entity.getBoardName());
listItemView.postNum
.setText(String.valueOf(entity.getPostNumberToday()));
listItemView.postNumLine.getLayoutParams().width =
(int) (entity.getPostNumberToday()*1.0/items.get(0).getPostNumberToday() * dispWidth *0.9);
/**
* 日帖数达到1000帖我们给予红色条,300-999给予黄色条,100-299给予绿色条,<100给予蓝色条,
* 条的长度代表发帖量占全站的发帖量比例
*/
if (entity.getPostNumberToday() > 999) {
listItemView.postNumLine
.setImageResource(R.drawable.post_num_line_red);
} else if(entity.getPostNumberToday() > 299) {
listItemView.postNumLine
.setImageResource(R.drawable.post_num_line_yellow);
} else if (entity.getPostNumberToday()>99) {
listItemView.postNumLine
.setImageResource(R.drawable.post_num_line_green);
} else {
listItemView.postNumLine
.setImageResource(R.drawable.post_num_line_blue);
}
convertView.setTag(listItemView);
return convertView;
}
}