When it comes android development and performance, if you have imageview then which one would be faster or better (is there a difference anyways!): setImageResource and setDrawable Iknow one takes ID and the other one takes drawable. But I will be getting the drwable from ID anyways. Which one do you think is better?
Or should I avoid using imageview alltogether and use load/draw bitmap? too many selections is confusing Thanks for the comments
They are different. From Android documents.
setImageResource: This does Bitmap reading and decoding on the UI thread, which can cause a latency hiccup.
If that's a concern, consider using setImageDrawable(android.graphics.drawable.Drawable) or setImageBitmap(android.graphics.Bitmap) and BitmapFactory instead.
Those exists as convenience methods so you don't have to always work around to always getting a drawable, or always having to pass in a resource ID. Various situations call for different approaches.
All in all, there's no difference. Use what works for your situation.
I think setImageDrawable
is better suited for memory intensive operations - like scrolling a RecyclerView, getting bitmap from memcache. But for something simpler, setImageResource
is the better API nowadays.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With