首页 > 代码库 > getResources().getIdentifier 加载资源

getResources().getIdentifier 加载资源

private AssetFileDescriptor getFileForWord(String word) {

    第一个参数是你的资源文件的名字,不带后缀的,,第二个参数是你资源文件所在的目录,比如layout,drawable或者是values,,,第三个是你的包名,,,,,
   int sound_id = getResources().getIdentifier(word, "raw", getPackageName());

   return getResources().openRawResourceFd(sound_id);
}

 

private void playNextFile() {
if (mQueuedFiles.size() == 0) {
return;
}

AssetFileDescriptor afd = getFileForWord(mQueuedFiles.get(0));
mQueuedFiles.remove(0);
try {
mPlayer.reset();
mPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
mPlayer.prepare();
mPlayer.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

getResources().getIdentifier 加载资源