Я пытаюсь показать потенциально прозрачное изображение из удаленного местоположения, но альфа-канал кажется белым, когда я добавляю его к своему ImageView
.
Я загружаю удаленное изображение сследующий код:
public static Bitmap loadBitmap(String url) throws IOException {
int bufferSize = 1024;
InputStream in = new BufferedInputStream(new URL(url).openStream(), bufferSize);
Bitmap bitmap = BitmapFactory.decodeStream(in);
try {
in.close();
} catch (Exception ignored) {
}
return bitmap;
}
В моем Activity
с упомянутым ImageView
у меня есть следующий код (try-catch опущен):
if (bitmap != null) {
ImageView imageView = (ImageView) findViewById(R.id.my_image_view);
imageView.setImageBitmap(bitmap);
}
bitmap.getConfig()
возвращает ARGB_8888
.
Я программирую на Android 1.6, то есть SDK версии 4.
Мне не хватает какого-то волшебного сеттера?Когда я загружаю точно такую же картинку как Drawable
из папки res, она работает нормально.
Я заметил сеттер, называемый setHasAlpha
на Bitmap
, но это с SDK 12-го уровня.
РЕДАКТИРОВАТЬ: я пытался получить цвет некоторых из пикселей, которые я знаю, прозрачные, и их цвет == 0
, который является прозрачным.