Изменить значение SwitchPreference в Android - PullRequest
0 голосов
/ 11 октября 2018

У меня есть PreferenceFragmentCompat с настройками переключателя.Одно из предпочтений требует разрешения, и я выяснил, как запросить разрешение.Моя проблема заключается в том, что если мне нужно проверить разрешение, коммутатор не должен изменять значение до тех пор, пока не будет получен результат разрешения, но это так.Итак, мой вопрос, как я могу изменить значение переключателя в таком случае?

1 Ответ

0 голосов
/ 11 октября 2018

Если вы хотите добиться ТОЧНО такого результата, я думаю, вам нужно переписать с нуля SwitchPreference, который должен дождаться результата обратного вызова onChanged (), прежде чем продолжить, изменив его внутреннее состояние.

Или выможет оставить компонент в более новом / измененном состоянии, а затем вернуться только к предыдущему состоянию, если разрешение не предоставлено.Диалоги запроса разрешения не могут быть пропущены, поэтому, даже если SwitchPreference уже изменен, пользователь не может сделать так много в вашей Деятельности, пока он не разрешит или не отклонит Разрешение, поэтому вполне безопасно оставить SwitchPreference во временном состоянии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...