public class DayAdapter extends BaseAdapter {
private Context mContext;
private Day[] mDays;
public DayAdapter(Context context, Day[] days) {
mContext = context;
mDays = days;
}
@Override
public int getCount() {
return mDays.length;
}
@Override
public Object getItem(int i) {
return mDays[i];
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
ViewHolder holder;
if(view==null){
view = LayoutInflater.from(mContext).inflate(R.layout.daily_list_item, null);
holder = new ViewHolder();
holder.iconImageView = (ImageView) view.findViewById(R.id.iconImageView);
holder.dayLabel = (TextView) view.findViewById(R.id.dayNameLabel);
holder.temperatureLabel = (TextView) view.findViewById(R.id.temperatureLabel);
view.setTag(holder);
}else{
holder = (ViewHolder) view.getTag();
}
Day day = mDays[i];
holder.dayLabel.setText(day.getDayOfTheWeek());
holder.temperatureLabel.setText(day.getMaxTemperature()+"");
holder.iconImageView.setImageResource(day.getIconId());
return view;
}
private static class ViewHolder{
ImageView iconImageView;
TextView temperatureLabel;
TextView dayLabel;
}
}
我得到例外:
FATAL EXCEPTION: main
java.lang.NullPointerException at app.com.example.tmrovsky.czywgdynipada.Adapters.DayAdapter.getView(DayAdapter.java:62)
在设置这三项时,我不知道哪里出错:
holder.dayLabel.setText(day.getDayOfTheWeek());
等等。我试图调试,没有空值(它是正确的Tueasday)。有什么想法,我的兄弟们? :)