안드로이드 개발 질문/답변
(글 수 45,052)
Drawable d = appList.get(3).loadIcon(packagemanager);
Bitmap appIcon = Bitmap.createBitmap(150,150,Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(appIcon);
d.setBounds(0,0,150,150);
d.draw(canvas);
img.setImageBitmap(appIcon);
다음과 같이 drawable 객체를 Bitmap으로 변경후 ImageVIew에 그려주는 코드입니다.
activity간의 drawable 객체 전송을 위해서 Bitmap으로 변환후 ByteArray를 putExtra 해주려고 하고 있습니다.
그런데 img.setImageBitamp(appIcon) 부분에서 NullPointerException이 나는데 이유를 모르겠습니다..
NullPointerException이니까 당연히 Null값이 들어가서 그럴텐데
d를 String으로 변환해서 log를 찍어보면 아래와 같은 값이 출력 됩니다.
11-26 09:28:12.265: D/yourApp(1868): android.graphics.drawable.BitmapDrawable@415487a0
아주 간단한 부분을 놓치고 있는건가요? ㅠ
appList 변수는 List<ApplicationInfo> appList; 입니다.
이미지뷰에 들어가는 비트맵이나 드로워블이 null이라도 정상적으로 표시됩니다
물론 화면에는 아무것도 보이지 않지만요..
이경우는 이미지뷰 자체가 null인것 같군요