Putting the bitmap reference in the convertview tag and retrieve the
tag when
The getview is called could be a solution?

On 17 Ott, 04:41, IcedNet <d...@icednet.info> wrote:
> You should look into Romain Guy's 2009/10 Google I/O presentations on
> UI -- he is the whip with ListViews/UI.
> If you're looking for what I think you're looking to do -- which is
> speed up that list view -- he has a view holder pattern that will do
> just that.
>
> Peace,
> Dan
>
> On Oct 16, 10:08 pm, Studio LFP <studio....@gmail.com> wrote:
>
>
>
> > Based on the code there, you wouldn't have the chance to recycle the bitmap
> > as you don't keep a handle to it anywhere.
>
> > Then again, if the ListView discards that particular row and you aren't
> > retaining any handles to the bitmap, then the bitmap should be scheduled for
> > collection by the GC. If you did try to retrieve the view that was holding
> > the image from the ListView and it did return it to you, there is a good
> > chance the ListView still wants to use it and you would not want to release
> > the bitmap.
>
> > Is there a reason you are wanting to try to recycle the bitmap?
>
> > Also, we are talking about the recycle() function on bitmap and not reusing
> > the same bitmap, correct?
>
> > Steven
> > Studio LFPhttp://www.studio-lfp.com
>
> > On Sunday, October 16, 2011 4:14:48 AM UTC-5, emanuele wrote:
>
> > > Hello guys.. that s my baseAdapter getview implmentation:
>
> > > @Override
> > > public View getView(int position, View convertView, ViewGroup parent)
> > > {
>
> > > int type = getItemViewType(position);
> > > if (convertView == null) {
> > > switch (type) {
> > > case TYPE_BIG_NEWS:
> > > convertView = mInflater.inflate(R.layout.big_news, null);
> > > break;
> > > case TYPE_NORMAL_NEWS:
> > > convertView = mInflater.inflate(R.layout.normal_news, null);
> > > break;
> > > default:
> > > break;
> > > }
> > > }
>
> > > ImageView thumb = (ImageView)
> > > convertView.findViewById(R.id.thumbId);
>
> > > File f = null;
> > > if (filename != null)
> > > f = mFileCache.getFile(i.newsKey, filename);
> > > if (f == null) {
> > > if (mGetThumbsThread != null && filename != null) {
> > > Log.i(TAG, "cache miss");
> > > thumbLinks.offer(new ThumbRequest(i.newsKey, i.thumbLink,
> > > i.thumbName));
> > > mGetThumbsThread.signal();
> > > }
> > > thumb.setImageResource(placeHolder);
> > > } else {
> > > Log.i(TAG,
> > > "file bitmap cached: " + f.getName() + " size: " + f.length() /
> > > 1024);
> > > bitmap = BitmapFactory.decodeFile(f.getAbsolutePath());
> > > thumb.setImageBitmap(bitmap);
> > > }
>
> > > return convertView;
> > > }
>
> > > Every row is compound of text and an ImageView. Is there any chance to
> > > recycle the bitmap I use in the getView?

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to