0

私の設定 Fragment では、パスワードを保護していますSwitchPreference。アプリの「編集モード」のロックを解除するために使用します。誰でもこのモードに入ることができるわけではないので、パスワードを設定しました。ただし、これにより問題が発生します。

最初に をクリックするSwitchPreferenceと、「オン」の位置に切り替わり、onSharedPreferenceChangedメソッドがトリガーされます。ただし、その人がパスワードを間違えると、それが「オフ」の位置に切り替わり、私のonSharedPreferenceChanged方法が再びトリガーされます!

したがって、問題は、SwitchPreferenceが変更されたときにリッスンしていることですが、クリックされたときにリッスンする必要があります。StackOverflow または Google で簡単に検索すると、クリックをリッスンするのではなく、onSharedPreferenceChanged. しかし、私が言ったように、これは私のニーズには合いません。

SwitchPreferenceがクリックされたときにリッスンできるようにする、ここでオーバーライドできる別の方法を知っている人はいますか?

私の目標は、スイッチが「ON」の場合はクリック音を聞き、「OFF」の場合はオンにすることです。ただし、「オフ」の場合は、パスワード ダイアログをポップアップします。パスワードが正しい場合はスイッチを「ON」に設定し、そうでない場合は「OFF」のままにします。

ありがとう

4

0 に答える 0