@Override public View getView(int position, View convertView, ViewGroup parent) { View row = convertView; WeatherHolder holder = null; if (row == null) { LayoutInflater inflater = ((Activity) context).getLayoutInflater(); row = inflater.inflate(layoutResourceId, parent, false); holder = new WeatherHolder(); holder.imgIcon = (ImageView) row.findViewById(R.id.imgIcon); holder.txtTitle = (TextView) row.findViewById(R.id.txtTitle); row.setTag(holder); } else { holder = (WeatherHolder) row.getTag(); } Profil weather = data[position]; holder.txtTitle.setText(weather.title); holder.imgIcon.setImageResource(weather.icon); return row; }
public View getView(int position, View convertView, ViewGroup parent) { WeatherHolder holder; View row = convertView; // inflate the layout for a single row LayoutInflater layoutInflater = LayoutInflater.from(mContext); if (row == null) { // if the row has not been created before row = layoutInflater.inflate(mLayoutResourceId, parent, false); holder = new WeatherHolder(); // get a reference to all the different view elements we wish to update holder.day = (TextView) row.findViewById(R.id.dayTextView); holder.date = (TextView) row.findViewById(R.id.dateTextView); holder.tempMin = (TextView) row.findViewById(R.id.tempMinTextView); holder.tempMax = (TextView) row.findViewById(R.id.tempMaxTextView); holder.imageView = (ImageView) row.findViewById(R.id.imageView); row.setTag(holder); } else { holder = (WeatherHolder) row.getTag(); } // get the data from the data array Weather weather = mData[position]; // setting the view to the data we need to display holder.day.setText(weather.simpleDay(weather.getmDate())); holder.date.setText(weather.simpleDate(weather.getmDate())); holder.tempMin.setText( String.valueOf(weather.fahrenheitToCelsius(weather.getmTempMin())) + "°"); holder.tempMax.setText( String.valueOf(weather.fahrenheitToCelsius(weather.getmTempMax())) + "°"); int resId = mContext .getResources() .getIdentifier( weather.getEmoji(weather.getIcon()), "drawable", mContext.getPackageName()); holder.imageView.setImageResource(resId); // returning the row view(because this is called getView after all) return row; }