如何使用变量从原始文件夹访问视频?

Mee*_*tat 2 variables video resources android

这是我的代码:

VideoView vd;
vd = (VideoView) findViewById(R.id.videoview2);
String path = "android.resource://" + getPackageName() + "/"
                        + R.raw.video1;
                vd.setVideoURI(Uri.parse(path));
                vd.start();
Run Code Online (Sandbox Code Playgroud)

这是有效的,但我希望R.raw.video1是一个字符串因为我有很多视频可以播放.

所以我想要的是:

String videoResource = "R.raw.video1"
 String path = "android.resource://" + getPackageName() + "/"
                            + videoResource;
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不起作用,我如何让它工作?

Ove*_*erv 8

您需要资源的标识符才能工作,可以使用以下命令检索其名称:

int id = getResources().
    getIdentifier("name_of_resource", "id", getPackageName());
Run Code Online (Sandbox Code Playgroud)

所以你的新代码将成为:

int videoResource = getResources().
    getIdentifier("video1", "raw", getPackageName());
String path = "android.resource://" + getPackageName() + "/" + videoResource;
Run Code Online (Sandbox Code Playgroud)