调用playSoundEffect时没有单击

Aha*_*nne 5 android android-ui

我在onCreate中为我的按钮添加了一个监听器:

Button enterButton = (Button) findViewById(R.id.buttonEnter);
    enterButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            v.playSoundEffect(SoundEffectConstants.CLICK);
        }
    });
Run Code Online (Sandbox Code Playgroud)

按钮有

android:soundEffectsEnabled="true" 
Run Code Online (Sandbox Code Playgroud)

调试器在onClick()例程中停止,因此进行调用,但不会发生单击.在附近的editText框中听到键盘点击,因此不是系统设置的问题.还有什么呢?

Pra*_*aik 0

好吧,我遇到了同样的情况,技巧是使用 Audiomanager。

在Activity类中定义一个AudioManager。

AudioManager audioManager;
Run Code Online (Sandbox Code Playgroud)

在onCreate中初始化。

audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
Run Code Online (Sandbox Code Playgroud)

在click方法中,使用audioManager来播放声音。

public void play(View view) {
    audioManager.playSoundEffect(SoundEffectConstants.CLICK,1.0f);
}
Run Code Online (Sandbox Code Playgroud)

请注意,给出的音量就好像1.0f您不指定音量一样,您将听不到任何声音。