简体   繁体   English

根据给定的参数播放不同的音频文件

[英]Play different audio files depending on given parameter

I have a method that has to play an audio file when a button is pressed.我有一种在按下按钮时必须播放音频文件的方法。 But I want the audio file that has to be played depend on the parameter of the method.但我希望必须播放的音频文件取决于方法的参数。 The parameter is a int with the same name as the audio file in raw folder.该参数是一个与 raw 文件夹中的音频文件同名的 int。 But I noticed that the id in Mediaplayer.create(this, R.raw.audio) can't be replaced with the method parameter.但我注意到Mediaplayer.create(this, R.raw.audio)中的 id 不能用方法参数替换。 What is the right way to approach this problem?解决这个问题的正确方法是什么?

public void playAudioFile(int audioId) {
    player = MediaPlayer.create(getActivity(), R.raw.audio2);
    playButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            player.start();
            player.release();
        }
    });
}

Is something like this what you want?你想要这样的东西吗?

playButton1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        playAudioFile(R.raw.audio1)
    }
});

playButton2.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        playAudioFile(R.raw.audio2)
    }
});

public void playAudioFile(int audioId) {
    player = MediaPlayer.create(getActivity(), audioId);
    player.start();
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM