LoginSignup
8
9

More than 5 years have passed since last update.

【Android】アプリ内で操作音を鳴らしたくない

Last updated at Posted at 2016-06-30

Androidでは端末の設定で「タッチ操作音」をONにしていると、
アプリ内のボタンやリストのセルをタップした時に操作音が鳴るようになる

もし何も対応しないまま、アプリ内のボタンに独自のタップ音をつけた場合、
2重でタップ音が聞こえてしまったり、アプリ内の独自ボリュームはミュートにしているのに端末の操作音が聞こえてしまって、
ユーザーからしたら不具合と思われてしまう可能性がある

そのようなことを回避するために、今回は自分のアプリ内では端末の操作音が鳴らないようにする設定方法の紹介

鳴らないようにする設定方法

設定にはxmlでやる方法とコードでやる方法がある

xml

設定したいボタンやリストに対して soundEffectsEnabled=falseを追加すれば良い

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:text="button"
    android:soundEffectsEnabled="false"
    />

また、使っているテーマのsoundEffectsEnabledに対してfalseを設定すると、
アプリ内全体で操作音が鳴らないように一括設定することもできる

<style name="AppTheme" parent="@style/AppBaseTheme">
    <item name="android:windowNoTitle">true</item>
    <item name="android:soundEffectsEnabled">false</item>
</style>

特にこだわりがなければテーマにさえ設定しておけば良い

コード

コードでやる場合には以下のようにすれば設定できる

java

Button button = (Button) view.findViewById(R.id.btn);
button.setSoundEffectsEnabled(false);

kotlin

var button = view.findViewById(R.id.btn) as Button
button.isSoundEffectsEnabled = false

xmlを使ってレイアウトを作っていないダイアログ内のボタンなどに対してはこの方法でやることになる

8
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
9