나는 위젯을 구현했습니다. 위젯은 일반적으로 잘 작동합니다. 그러나 여기저기서 나는 위젯의 이미지 중 일부가 깨져서 (검은 색, 정확히 말하면) 사용자들로부터 보고서를 받는다. 정확히 설명 된 문제가있는 것으로 보이는 Motorola Razr i (XT890) 기기의 스크린 샷을 포함 시켰습니다. 모든 아이콘은 PNG 형식의 drawable-hdpi 리소스 폴더에 있습니다.때때로 위젯의 아이콘이 부러 지거나 검은 색이됩니다.
이러한 동작에 대한 가능한 설명은 무엇입니까? 여기
내가 위젯에 이미지를 할당하는 방법 코드입니다 :블랙 아이콘
public static void updateWidgetData(RemoteViews view, String id, Integer idWidget, String background, String showTitle, String titleAlpha, Context context) {
...
Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), resourceId, AndroidUtil.getLowMemoryBitmapOptions());
view.setImageViewBitmap(idWeatherIcon, bitmap));
...
}
public static BitmapFactory.Options getLowMemoryBitmapOptions() {
/** BITMAP FACTORY OPTIONS **/
BitmapFactory.Options bitmapOpts = new BitmapFactory.Options();
bitmapOpts.inPreferredConfig = Bitmap.Config.RGB_565;
bitmapOpts.inPurgeable = true;
bitmapOpts.inInputShareable = true;
/** END BITMAP FACTORY OPTIONS **/
return bitmapOpts;
}
임의의 위치에 표시되므로 예는 오류가 발생 한 가능성 ...
** 1) ** 내 질문을 getLowMemoryBitmapOptions() 코드로 업데이트했습니다. 옵션은 모든 기기에서 동일합니다. ** 2) ** 이미지를 확인했습니다. 모두 같은 출처로되어 있습니다. 확실히 동일합니다. ** 3) ** 내 견해로는 장치/GPU/OS가이 문제와 관련이 없다고 생각합니다. 차라리 모토로라의 사용자 정의 홈 화면 구현을 가정합니다. [Motoblur] (http://en.wikipedia.org/wiki/Motoblur) – Devdroid
홈 화면이 부분적으로 위젯에 영향을주지 않아야합니다 (모든 이미지가 검은 색이어야 함) . Go Launcher와 같은 다른 Launcher를 설치하고 시도해보십시오. 테스트 목적으로'bitmapOpts.inPurgeable = true; bitmapOpts.inInputShareable = true;'로 변경하고 ARGB_8888로 변경하십시오. – Cornel