2013-12-11 2 views
0

, как получить текущий фон ID изображениякак получить текущее фоновое изображение ID

мой код

int d = iv.getId(); 
Bitmap image = BitmapFactory.decodeResource(getResources(),d); 

// convert bitmap to byte 
ByteArrayOutputStream stream = new ByteArrayOutputStream(); 
image.compress(Bitmap.CompressFormat.JPEG, 100, stream); 
byte imageInByte[] = stream.toByteArray(); 

//Log.e("insert",a); 
db1.addFavorite(imageInByte); 
e1.setText(""); 

, но он не работает.

+0

Что 'iv'? Это должен быть идентификатор ресурса изображения – Apoorv

+0

, каково ваше требование? для вашего вида info u может получить идентификатор только для просмотра не для его фона, но вы можете получить фоновое изображение view.getBackground() он возвращает drawable not id – anand

+0

Нам нужно немного больше контента: что такое 'iv' (я предполагаю, что ImageView ?) и что 'db1'? Зачем вам нужно изображение в виде потока байтов и как вы его понимаете, что drawable - это растровое изображение? – jboi

ответ

0

Предполагая, что iv является ImageView и что исходное изображение этого ImageView является Bitmap (что означает, что рисуем, скорее всего, * .png в ваших ресурсов)

Далее я предполагаю, что вы хотите получить растровое изображение, которое является в настоящее время изображением образа изображения iv. Не тот фон, о котором вы говорили в своем вопросе.

Чтобы получить Bitmap и работать, заменить первые две строки с этим кодом:

Bitmap bitmap = ((BitmapDrawable) iv.getDrawable()).getBitmap(); 
Смежные вопросы