Android从drawable获取图像path作为string

有没有什么办法,我可以从android中的drawable文件夹中获取图像path作为string。 我需要这个,因为我实现了我自己的视图stream,通过在SD卡上使用它们的path显示图像,但是我想在没有图像显示时显示默认图像。

任何想法如何做到这一点?

Solutions Collecting From Web of "Android从drawable获取图像path作为string"

这些都是方法:

String imageUri = "drawable://" + R.drawable.image; 

我testing的其他方式

 Uri path = Uri.parse("android.resource://com.segf4ult.test/" + R.drawable.icon); Uri otherPath = Uri.parse("android.resource://com.segf4ult.test/drawable/icon"); String path = path.toString(); String path = otherPath .toString(); 

如果您计划从其path中获取图像,最好使用“资产”,而不是试图找出可绘制文件夹的path。

  InputStream stream = getAssets().open("image.png"); Drawable d = Drawable.createFromStream(stream, null); 

首先检查文件是否存在于SDCard中。 如果文件不存在于SD卡中,则可以使用setImageResource()方法设置图像,并从可绘制文件夹传递默认图像

示例代码

 File imageFile = new File(absolutepathOfImage);//absolutepathOfImage is absolute path of image including its name if(!imageFile.exists()){//file doesnot exist in SDCard imageview.setImageResource(R.drawable.defaultImage);//set default image from drawable folder } 

这样你可以在你的drawable文件夹中find一个特定的图像。 获取资源,然后指定要访问的图像:

 Resources res = getResources(); Drawable drawable = res.getDrawable(R.drawable.myimage); 

有关更多信息,请参阅可绘制资源 。