Android Clickable AppWidget 禁用点击声音
Posted
技术标签:
【中文标题】Android Clickable AppWidget 禁用点击声音【英文标题】:Android Clickable AppWidget Disable Sound on Click 【发布时间】:2013-09-09 16:38:48 【问题描述】:我有一个 AppWidget(我的应用程序的一部分)。当用户单击小部件中的按钮时,我希望没有声音。 我该怎么做?
【问题讨论】:
【参考方案1】:CommonsWare 回答: 这不是 RemoteViews 上的方法,setSoundEffectsEnabled() 也不是 RemotableViewMethod,所以字面的答案是不正确的。但是,布局文件中的 android:soundEffectsEnabled="false" 可能会起作用。
在 xml 布局文件中设置 android:soundEffectsEnabled="false" 确实有效!
【讨论】:
【参考方案2】:据我所知,您必须关闭通知声音(按下音量,然后选择设置)。点击声音通常由操作系统创建(三星 Android 会有点击,但谷歌 Nexus 不会)。我能想到的唯一其他方法是,如果小部件是您的,请创建一个覆盖该特定功能的自定义按钮。
【讨论】:
好吧,如果我可以直接访问视图,我可以: myButton.setSoundEffectsEnabled(false);但是,作为 RemoteViews,我认为这是不可能的。 不,我的意思是,您的应用程序的小部件部分(您开发了它)还是您试图静音其他人的小部件。 哦,AppWidget 是我的。它是我的应用程序的一部分。 setSoundEffectsEnabled(false) 并不总是有效,最好的办法是通过扩展 Button 并删除该功能来删除该功能。不过,您将需要进入该修复程序的源代码。 查看 CommonsWare 的回答。感谢您的帮助。【参考方案3】:添加以下代码行禁用点击声音,
yourbutton.setSoundEffectsEnabled(false);
【讨论】:
我无法直接访问该视图,因为它是一个 AppWidget。 @NightlyNexus:这不是RemoteViews
上的方法,setSoundEffectsEnabled()
也不是RemotableViewMethod
,所以字面上的答案是不正确的。但是,布局文件中的android:soundEffectsEnabled="false"
可能会起作用。
@CommonsWare 是的,做到了。我应该想到的哈哈。在 xml 中设置内容是使用 RemoteViews 的最佳方式。
很高兴解决了您的问题。感谢 @CommonsWare
@CommonsWare 关于setSoundEffectsEnabled
我已在我的一个按钮上将其设置为false,但没有效果。它仍然会发出声音。在 Google Nexus 10 上测试以上是关于Android Clickable AppWidget 禁用点击声音的主要内容,如果未能解决你的问题,请参考以下文章
java [TextView Clickable] #tags:Android
selector的使用,android:clickable="true"
Android-配置文件中设置“android:clickable="false"无效的原因及解决办法
Android中涉及到的焦点问题,focusable,clickable,enabled