package it.fdev.unisaconnect;
import it.fdev.unisaconnect.R;
import it.fdev.unisaconnect.data.WeatherData.DailyForecast;
import java.util.ArrayList;
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;
public class WeatherForecastAdapter extends BaseAdapter {
private Context context;
private ArrayList<DailyForecast> forecastList;
private LayoutInflater inflater;
public WeatherForecastAdapter(Context context, ArrayList<DailyForecast> forecastList) {
this.context = context;
this.forecastList = forecastList;
inflater = LayoutInflater.from(context);
}
public int getCount() {
return forecastList.size();
}
public Object getItem(int position) {
if (position < 0 || position > forecastList.size()) {
return null;
}
return forecastList.get(position);
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
v = inflater.inflate(R.layout.weather_forecast_column, parent, false);
}
DailyForecast cForecast = forecastList.get(position);
TextView dayView = (TextView) v.findViewById(R.id.forecast_day);
ImageView iconView = (ImageView) v.findViewById(R.id.forecast_icon);
TextView descriptionView = (TextView) v.findViewById(R.id.forecast_description);
TextView minTempView = (TextView) v.findViewById(R.id.forecast_min);
TextView maxTempView = (TextView) v.findViewById(R.id.forecast_max);
TextView precipitationsView = (TextView) v.findViewById(R.id.forecast_precipitations);
dayView.setText(cForecast.getValidDay());
iconView.setImageDrawable(cForecast.getIconDrawable(context));
descriptionView.setText(cForecast.getDescription());
minTempView.setText(cForecast.getMinTemp());
maxTempView.setText(cForecast.getMaxTemp());
precipitationsView.setText(cForecast.getProbOfPrec());
return v;
}
}