有什么方法可以让我从imageView获得R.drawble.img id,它有一些带有src @ drawable / img的图像。我的意思是如果我有src @ drawable / img的图像,我想获得该imageView的R.drawable.xxxx。那可能吗?
我在问,因为我有至少50张图像视图,无论何时点击它们都要分享。
答案 0 :(得分:0)
从Imageview获取Drawable
imageview.getDrawable();
以位图形式获取图像
BitmapDrawable bitmapDrawable = ((BitmapDrawable) drawable);
Bitmap bitmap = bitmapDrawable .getBitmap();
获取ResourceId
使用此
int resId=Integer.parseInt(imageView.getTag().toString());
答案 1 :(得分:0)
你可以得到像
这样的抽象Drawable myDrawable = imageView.getDrawable();
您可以将其与可绘制资源(如
)进行比较if(imageView.getDrawable()==getResources().getDrawable(R.drawable.image1)){
//do work here
}
答案 2 :(得分:0)
不,您无法获得可绘制的ResourceId,因为ImageView无法保存它。
但你可以使用另一种方法。 首先,您可以从程序代码中设置image src参数,这有助于您了解哪个ResourceId具有具体的ImageView。
第二个变种你可以使用hack。您可以使用tag参数在ImageView中保存ResourceId。
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon_profile_photo"
android:tag="@drawable/icon_profile_photo"/>
之后,您可以通过以下代码获取ResourceId:
imageView.getTag()