Android:按钮在单击时播放 2 种声音

Posted

技术标签:

【中文标题】Android:按钮在单击时播放 2 种声音【英文标题】:Android: button plays 2 sounds onClick 【发布时间】:2014-06-04 13:19:10 【问题描述】:

我有一个带按钮的GridView。我编辑了GridView.onItemClickLisener 以在单击按钮时播放声音:

mGridView.setOnItemClickListener(new OnItemClickListener() 
                    @Override
                    public void onItemClick(AdapterView<?> parent, View view,
                            int position, long arg3) 
                        Button button = (Button) view;
                        button.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY);
                        mSoundPoolHelper.play(mSoundId);
                    
                );

但是,当我单击按钮时,我可以听到两种不同的声音。一种是mSoundId,在监听器中设置。但除此之外,我还可以听到 android 默认按钮的点击声音。如果我把媒体音量调低,那我就只能听到安卓默认的按钮点击声了。如何消除这种声音?

【问题讨论】:

【参考方案1】:

如果你想禁用Button默认的点击声音,那么使用下面的代码,

yourbutton.setSoundEffectsEnabled(false);

您还可以通过更改主题来禁用整个应用程序中的默认声音。请参阅下面的帖子,

https://***.com/a/14763254/1564821

Disable Button click sound in android

【讨论】:

这在Button 上不起作用,但在将其设置为GridView 时会起作用。谢谢

以上是关于Android:按钮在单击时播放 2 种声音的主要内容,如果未能解决你的问题,请参考以下文章

如何创建在单击时播放不同声音的按钮的 ListView

Android:按钮单击时的随机声音效果

Android SoundPool 不播放声音

在按钮上播放声音点击android

按钮onClickListener无法在Android中播放声音

触发 AVAudioPlayer 以停止所有声音并播放选定的声音,除非单击播放(选定)按钮