I'm a little confused: as a rule when async loading images to some sort of list view (whether on Android or iOS or in the abstract on another platform), you essentially must do this ..
-- make a note of "which" cell this is (say, #213)
-- start getting the image from the net.
-- it has loaded from the net. What cell are we now?
-- if we are "still" 213, load the image to the image view!
-- if we are "no longer" 213, just forget about it.
this is a basic in lazy-loading async images. For example, Lucas Rocha explains it perfectly in a famous article here:
http://lucasr.org/2012/04/05/performance-tips-for-androids-listview/
(scroll down to exactly "Here is just a simplistic sketch of one way you could do it:" ...)
Well now, as I understand it Picasso in fact does this for you, completely automatically.
On its own, Picasso 'knows' if the view has changed. If the view has changed, Picasso knows not to bother loading it
Am I completely correct? This is a built-in feature of Picasso, and I need do nothing else?
(Aside - I'm somewhat confused "how" Picasso does this; glancing at it I can't see any magic code in Picasso where it makes a note of the id, or something of the holder? view? in question.)
Just to be clear, I'm using Picasso in the usual way exactly like this, essentially at the end of getView...
Picasso.
with(State.mainContext).
load(imageFile.getUrl()).
placeholder(R.drawable.default).
noFade().
into(v.hexaIV);