I'm making a custom ImageView
. One of the methods is to load an image from a URL. And I want to retrieve the Bitmap in a Thread and load the bitmap in the UI thread.
How can I make a runOnUIThread()
call for painting the bitmap?
Is there some kind of built in function? Or should I create a Handler
in the constructor and use it for running runnables in the UI thread?
Download the Image via
AsyncTask
and set to your view in its onPostExecute methodOR
From a separate image downloading thread use the post method of
View
which will always run itsRunnable
on UI-thread:You can do something like this:
This will work outside of an activity, like in a ListAdapter.
Create a class that extends from AsyncTask. Pass the ImageView in the constructor. In the doInBackground method, download the image. In the postExecute method, set the image to the ImageView.