Android - png resource converted to a ColorDrawable on android < 4.0 -


according documentation here, png resource should converted bitmapdrawable. i'm observing strange behavior wherein png file has only black pixels in resulting in crash because of classcastexception (wrapped in invocationtargetexception) if try following in custom view's constructor :

   ...   tempdrawable = typedarr.getdrawable(r.styleable.customview_src); // source points png file   log.i("testpngtoresource", "canonical class name " + tempdrawable.getclass().getcanonicalname());   tempbitmap = ((bitmapdrawable) tempdrawable).getbitmap();   ... 

i see following logged on android 2.2 , 2.3

 09-24 13:21:37.575: i/testpngtoresource(532): canonical class name android.graphics.drawable.colordrawable 

why resource not being converted bitmapdrawable?

this optimization performed aapt. able recognize images made of single color , turn them into, well, single color instead of bitmap. more space-efficient, improves loading times, etc.


Comments

Popular posts from this blog

c# - How Configure Devart dotConnect for SQLite Code First? -

java - Copying object fields -

c++ - Clear the memory after returning a vector in a function -