package com.zhen.accountbook.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.zhen.accountbook.R;
import com.zhen.accountbook.db.AccountBean;
import java.util.Calendar;
import java.util.List;
import java.util.concurrent.CancellationException;
public class AccountAdapter extends BaseAdapter {
Context context;
List<AccountBean> mDatas;
LayoutInflater inflater;
int year, month, day;
public AccountAdapter(Context context, List<AccountBean> mDatas) {
this.context = context;
this.mDatas = mDatas;
inflater = LayoutInflater.from(context);
Calendar calendar = Calendar.getInstance();
year = calendar.get(Calendar.YEAR);
month = calendar.get(Calendar.MONTH) + 1;
day = calendar.get(Calendar.DAY_OF_MONTH);
}
@Override
public int getCount() {
return mDatas.size();
}
@Override
public Object getItem(int i) {
return mDatas.get(i);
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
ViewHolder viewHolder = null;
if (view == null) {
view = inflater.inflate(R.layout.item_mainlv, viewGroup, false);
viewHolder = new ViewHolder(view);
view.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) view.getTag();
}
AccountBean accountBean = mDatas.get(i);
viewHolder.typeIv.setImageResource(accountBean.getsImageId());
viewHolder.typeTv.setText(accountBean.getTypename());
viewHolder.beizhuTv.setText(accountBean.getBeizhu());
viewHolder.moneyTv.setText("¥ " + accountBean.getMoney());
if (accountBean.getYear() == year && accountBean.getMonth() == month && accountBean.getDay() == day) {
String time = accountBean.getTime().split(" ")[1];
viewHolder.timeTv.setText("今天 " + time);
} else {
viewHolder.timeTv.setText(accountBean.getTime());
}
return view;
}
class ViewHolder {
ImageView typeIv;
TextView typeTv, beizhuTv, timeTv, moneyTv;
public ViewHolder(View view) {
typeIv = view.findViewById(R.id.item_mainlv_iv);
typeTv = view.findViewById(R.id.item_mainlv_tv_title);
beizhuTv = view.findViewById(R.id.item_mainlv_tv_beizhu);
timeTv = view.findViewById(R.id.item_mainlv_tv_time);
moneyTv = view.findViewById(R.id.item_mainlv_tv_money);
}
}
}