2015-05-19 6 views
-4

Я создал один ImageView с именем imgView, и у меня есть три изображения с возможностью рисования в каталоге res/drawable. Внутри onCreate() метода я установил один рисуем изображение для imgView как:Получить идентификатор drawable в ImageView

ImageView imgView = (ImageView) findViewById(R.id.imgView); 
imgView.setImageResource(R.drawable.image1); 

Мои сомнения в том, как получить Drawable идентификатор изображения, которое в настоящее время установлены в imgView.

+5

Вы можете сослаться на эту ссылку http://stackoverflow.com/a/4529235/4741246 –

+0

Возможный дубликат [imageview drawable id in android] (http://stackoverflow.com/questions/4526585/imageview-drawable-id -in-android) – cybermonkey

+1

@DivyaJain Должен быть помечен как обманщик в этом случае. – cybermonkey

ответ

-1

EDIT:

К сожалению, не пропустите "ID" в этом вопросе!

Вы можете использовать это:

private int getImageResource(ImageView iv) { 
    return (Integer) iv.getTag(); 
} 
+3

Вы должны внимательно прочитать вопросы: * как получить идентификатор drawable * – 2Dee

+2

Это работает, только если у вас есть _set_ тег ... –

-3

Drawable myDrawable = imgvw.getDrawable();

Получить вытяжке, как это, для сравнения с уже в ваших вводимого коэффициента ресурсов.

+5

Вы должны более внимательно прочитать вопросы: * как получить идентификатор drawable * – 2Dee

1

Я не вижу возможности получить id из последних доступных.

Идентификатор drawable хранится в закрытом поле mResource, и нет доступа к нему, что дает вам доступ к нему.

private int mResource = 0;

https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/java/android/widget/ImageView.java

Я не рекомендую, но, возможно, вы можете сделать некоторые фантазии отражений.

+0

Это неверно, см. ответ дублированного целевого вопроса. – cybermonkey

Смежные вопросы