Java 选择ListPreference时播放声音
我设置了一个ListPreference,它有四个选项。我只是想知道在选择其中一个选项后是否可以播放声音?我想在从ListPreference中选择铃声后制作一个声音,并在选择铃声后播放声音样本。我不想在从ListPreference中选择选项后单击按钮播放声音。我希望它在首选项屏幕打开时播放,在选择之后立即播放。也许您可以添加一个侦听器,然后在回调中从类路径读取声音文件来播放它。我快速拼凑了一个示例(使用Java7)来展示播放音频文件的示例,希望它能帮助:Java 选择ListPreference时播放声音,java,android,audio,listpreference,Java,Android,Audio,Listpreference,我设置了一个ListPreference,它有四个选项。我只是想知道在选择其中一个选项后是否可以播放声音?我想在从ListPreference中选择铃声后制作一个声音,并在选择铃声后播放声音样本。我不想在从ListPreference中选择选项后单击按钮播放声音。我希望它在首选项屏幕打开时播放,在选择之后立即播放。也许您可以添加一个侦听器,然后在回调中从类路径读取声音文件来播放它。我快速拼凑了一个示例(使用Java7)来展示播放音频文件的示例,希望它能帮助: import java.io.IOE
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);
}
}
}