0

我设置了一个 ListPreference,它有四个选项。我只是想知道在选择其中一个选项后是否可以播放声音?在从 ListPreference 中选择它后,我想制作一些可以使铃声发出声音的东西,并且我希望在选择它后播放声音样本。从 ListPreference 中选择选项后,我不希望通过单击按钮播放声音。我希望它在 PreferenceScreen 打开时播放,就在选择之后。

4

1 回答 1

0

也许您可以添加一个侦听器并在回调中从类路径中读取声音文件来播放它。我快速编写了一个示例(使用 Java7)来展示一个播放音频文件的示例,希望它有所帮助:

import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;

public class Main {

    public static void main(String args[]) {
        Clip clip;
        try {
            clip = AudioSystem.getClip();
            AudioInputStream inputStream = AudioSystem.getAudioInputStream(
                    Main.class.getResourceAsStream("Morse.aiff"));
            clip.open(inputStream);
            clip.start();
            // optionally, sleep the thread for the duration of the audio clip, 
            // or else you may not hear it
            Thread.sleep(5000); 
        } catch (LineUnavailableException | UnsupportedAudioFileException | IOException | InterruptedException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}
于 2013-07-11T04:05:48.910 回答