四畳半の秘密基地

さあ、今日はどんな実験をしよう

MENU

アニメーション設定を見てアプリの挙動を変えたいとき

アプリに凝った実装を入れるのは大事だなーと思ってアニメーションを加えてみました。
しかし、アプリリリース後に早速問い合わせが、、、
加えたアニメーションはゆっくり縦揺れするアニメーションでしたがユーザの問い合わせによるとアニメーション対象物がブルブル震えてるとのこと(((( ;゚Д゚)))ガクガクブルブル
調査したところ開発者オプションのアニメーション間隔設定がオフされていると再現しました。

そんなときは

canUseDuration = Settings.Global.getFloat(contentResolver, Settings.Global.ANIMATOR_DURATION_SCALE, 0);

APIレベル17未満の場合は

canUseDuration = Settings.System.getFloat(contentResolver, Settings.System.ANIMATOR_DURATION_SCALE, 0);

のように書くと設定値が取得できます。オフの場合は0が返ってくるのでその場合はアニメーションしないようにしました。