我有以下代码:
布局:
<ViewFlipper android:id="@+id/viewFlipper"
android:layout_height="fill_parent"
android:layout_width="fill_parent" >
<include layout="@layout/imagen3"/>
<include layout="@layout/imagen2"/>
布局imagen3示例:
<ImageView
android:id="@+id/preview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/fondo3"/>
Java:
Uri imageUri = Uri.parse("android.resource://" + getPackageName()
+ "/drawable/" + "preview");
我想用imageview的id创建ImageURI。
答案 0 :(得分:2)
我不认为这是一个好主意,因为drawable在internal storage中,因此另一个应用程序无法访问此内存。
首先,您可以将图片副本复制到external storage
或者甚至更好地创建Content Provider。这是android中共享内容最正确,最安全的方式。例如,查看here。
答案 1 :(得分:0)
您可以使用它的ID获取它的R索引(以便您可以使用它)。像这样:
Integer imageIs = getImageViewResource(R.id.preview)
你可以用它做更多的事情,比如改变图像:
setImageViewResource(R.id.preview, newImage)
为什么你要将它设置为URI作为一个谜......
答案 2 :(得分:0)
问题不在于内部还是外部,因为它与内部图像一起正常工作,问题是我想使用相同的代码来对应每个图像的不同的drawable