Я выбрал путь, по которому каждое действие должно реализовывать onSharedPreferenceChangedListener.Чтобы служба обновляла значения для отправки сразу нескольким операциям (не важно, какая из них имеет фокус)
Когда вызывается прослушиватель, у меня есть только ключ.Затем я должен выполнить поиск этого ключа, чтобы получить соответствующий вид.Это было неудачно.Я попытался с помощью getCurrentFocus (), а затем findViewWithTag ().Даже попробовал .getRoot () после getFocus ().
В целях тестирования я просто попытался получить дескриптор View вне Слушателя.Я должен был убедиться, что setText работал в runnalbe внутри UIthread для работы.
Я посмотрел на какой-то другой код, и они выполняют кучу других проверок ключа.Я мог бы сделать это, чтобы динамически получить дескриптор представления, потому что я буду знать, какой идентификатор соответствует строковому ключу, но оба способа кажутся неэффективными.
Это подводит меня к общему вопросу.Это способ заполнить текст представления непосредственно из предпочтения, используя XML?Тогда мне не пришлось бы беспокоиться о различных действиях, реализующих слушателя.Все будет содержаться в файле XML, который я могу свободно перемещать.