我正在使用ontouch侦听器来捕获按键和按键事件。用于重复功能。按下按钮时,我还想发出咔嗒声。我尝试添加一个onClick方法并设置clickable true但是ontouchlistener似乎覆盖了onclicklistener。
如何进行按键点击声音并按照用户首选项进行点击?
更新:谢谢大家。我通过Android源找到了我的答案。在PhoneWindow.java中,我找到了一个他们正在做我需要的地方。实质上,您打开音频管理器并播放AudioManager.FX_KEY_CLICK。 AudioManager.playSoundEffect仅在适当时播放音效。
private static AudioManager audioManager;
...
audioManager = (AudioManager) getSystemService(
Context.AUDIO_SERVICE);
...
audioManager.playSoundEffect(AudioManager.FX_KEY_CLICK);
答案 0 :(得分:1)
我在编辑问题时回答了我自己的问题。我在这里回答只是为了让我对这个问题的回答更加明显。正如我在修改问题时说的那样。点击你:
private static AudioManager audioManager;
...
audioManager = (AudioManager) getSystemService(
Context.AUDIO_SERVICE);
...
audioManager.playSoundEffect(AudioManager.FX_KEY_CLICK);
答案 1 :(得分:0)
试试这个
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
button_flip.playSoundEffect(0);
}
});
值here
答案 2 :(得分:0)
将您的声音保存在res / raw /下。假设声音名称是tap.mp3, 然后代码看起来像这样。
MediaPlayer tap ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
tap = MediaPlayer.create(getApplicationContext(), R.raw.tap);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Playing sound.
tap.start();
}
}); }
MediaPlayer的start()将播放声音。
告诉我它是否有效。