2011-12-01 44 views
0

我有一些视频在R.res.raw上动态存储。我如何指定资源从R.res.drawable动态获取?

例如,我可以查看在视频名为v.mp4与这行代码:

String fileName = "android.resource://" + this.getPackageName() + "/" + R.raw.v; 

OK,但我会形容,我必须以一个字符串(“V”)打开视频。于是,我试图做到这一点,但它没有工作:

String fileName = "android.resource://" + this.getPackageName() + "/" + R.raw+".v"; 

我不能这样做,我就R.raw

得到一个错误

我也试过这个,但它不't works:

String fileName = "android.resource://" + this.getPackageName() + "/res/raw/"+"v.mp4"; 

我该如何解决这个问题?

回答

2

如果你想获得任何资源路径则有两种方式:

  1. 使用资源名称

    语法:android.resource://[package]/[res type]/[res name]

    例如:如果的icon.png图像文件可用res/drawable文件夹,你可以得到如下路径:

    String PATH="android.resource://com.my.package/drawable/icon";

  2. 使用资源ID

    语法:android.resource://[package]/[resource_id]

    例如:如果的icon.png图像文件在资源使用/绘制的文件夹,你可以得到路径:

    String PATH="android.resource://com.my.package/" + R.drawable.icon;

这是获取存储在可绘制文件夹中的任何图像文件的URI的示例。

同样,您也可以获取res/raw文件夹的URI。

+0

我传递图像路径为html标签是不是为我工作。 – vntstudy

+0

我正在通过html 标记的路径显示在webview中。它不适合我,它在那里没有显示图像。 – vntstudy

2

它必须给你一个错误, R.raw.v.mp4(它必须是R.raw.v)给出了一个genarated int引用,但不是一个字符串,所以你不能得到它通过给字符串路径。您可以打印它并看到它生成一个只有应用程序才能理解的int值。

1

如下您可以使用此:

android.resource://your package/raw/v