package edu.hebtu.movingcampus.adapter;
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import edu.hebtu.movingcampus.R;
import edu.hebtu.movingcampus.activity.NewsListActivity;
import edu.hebtu.movingcampus.adapter.base.AdapterBase;
import edu.hebtu.movingcampus.subject.base.ListOfNews;
//可选主题主页新闻+本地通知
public class InfoSubjectAdapter extends AdapterBase<ListOfNews> {
private Context context;
private int rowlayout;
/**
* initial
*
* @param list
* :news resource
* @param context
* :app context
* @param resourceId
* :item xml view
*/
public InfoSubjectAdapter(List<ListOfNews> list, final Context context,
int resourceId) {
super(null);
this.context = context;
this.rowlayout = resourceId;
this.mList = list;
}
// position MK,重写
@Override
public long getItemId(int position) {
// return ((News)getItem(position)).getId();
// ?
return mList.get(position).getId();
}
@Override
protected View getNextView(int position, View convertView, ViewGroup parent) {
// 构造一个布局文件加载器
if (convertView == null) {
LayoutInflater inflator = ((Activity) context).getLayoutInflater();
convertView = inflator.inflate(rowlayout, null);
final ViewHolder viewHolder = new ViewHolder(convertView);
convertView.setTag(viewHolder);
}
ViewHolder holder = (ViewHolder) convertView.getTag();
final ListOfNews subject = (ListOfNews) getItem(position);
convertView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(context, NewsListActivity.class);
i.putExtra("id", subject.getId() + "");
context.startActivity(i);
}
});
// show
holder.icon.setImageResource(subject.getIcon());
holder.title.setText(subject.getDesc());
// return 加载数据后的iew对象
return convertView;
}
static class ViewHolder {
public ViewHolder(View convertView) {
this.title = (TextView) convertView.findViewById(R.id.info_tv);
this.icon = (ImageView) convertView.findViewById(R.id.info_icon);
}
public TextView title;
public ImageView icon;
}
@Override
protected void onReachBottom() {
// TODO Auto-generated method stub
}
}