[mono-android] ViewHolder Implementation

bauermt40 matthewbauer at gmail.com
Fri Jan 6 10:42:04 EST 2012


I was able to figure this out. Maybe it was a noob thing, but I wanted to
post the correct implementation for anyone else who's struggling with the
ViewHolder.

public override View GetView(int position, View convertView, ViewGroup
parent)
        {
            ViewHolder holder;

            if (convertView == null)
            {
                convertView =
inflater.Inflate(Resource.Layout.news_list_item_thumb, parent, false);

                holder = new ViewHolder();
                holder.title =
(TextView)convertView.FindViewById(Resource.Id.generic_list_title);
                holder.thumb =
(ImageView)convertView.FindViewById(Resource.Id.generic_list_thumb);

                convertView.SetTag(Resource.Layout.news_list_item_thumb,
holder);
            }
            else
            {
                holder =
(ViewHolder)convertView.GetTag(Resource.Layout.news_list_item_thumb);
            }

            holder.title.Text = NewsItems[position].Title;
           
holder.thumb.SetImageBitmap(Android.Media.ThumbnailUtils.ExtractThumbnail(((BitmapDrawable)NewsItems[position].Thumbnail).Bitmap,
75, 75));

            return convertView;
        }

        class ViewHolder : Java.Lang.Object
        {
            public TextView title { get; set; }
            public ImageView thumb { get; set; }
        }

--
View this message in context: http://mono-for-android.1047100.n5.nabble.com/ViewHolder-Implementation-tp5124159p5125877.html
Sent from the Mono for Android mailing list archive at Nabble.com.


More information about the Monodroid mailing list