作者darkk6 (Mr. Pan)
看板AndroidDev
标题Re: [问题] 取得imageView的resID?
时间Thu Aug 16 18:21:13 2012
※ 引述《henry4343 (henry)》之铭言:
: 请问一下
: 我在设定imageView的时候
: 可以使用 imageView_preview.setImageResource(resId) ;
: 那当我现在要取得设定的resId该怎麽做呢?
: 感谢~
API 本身没提供类似的方法...
不过透过 Java Reflect 机制倒是可以取得储存的资料
http://ppt.cc/dk7L
先从 android source code 里面看到, setImageResource()
会有一个变数去纪录给予的 Resource ID
private int mResource = 0;
这样一来就可以透过 reflect 机制取取得他的值:
private int getImageResourceID(ImageView instance){
int rID=0;
try{
Class c=instance.getClass();
Field f=c.getDeclaredField("mResource");
f.setAccessible(true);
rID=f.getInt(instance);
}catch(Exception e){
e.printStackTrace();
}
return rID;
}
当然目标平台不同可能还要调整。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.39.75