Когда регистрировать/отменять регистрацию широковещательного приемника для пользовательского класса представления?Android

Форум для тех, кто программирует под Android
Anonymous
Когда регистрировать/отменять регистрацию широковещательного приемника для пользовательского класса представления?

Сообщение Anonymous »

У меня есть собственный класс, расширяющий View. В этом классе я хочу сделать несколько вещей на основе Broadcasts, поэтому регистрирую BroadcastReceiver. Когда лучше всего зарегистрировать и отменить регистрацию BroadcastReceiver для пользовательской реализации представления? Мне это не кажется таким простым, как Activity.

Сейчас я переопределяю onWindowVisibilityChanged(). Там я проверяю предоставленную видимость int и, если она VISIBLE, регистрируюсь. В противном случае я снимусь с регистрации. Теперь я понимаю, что это проблематично, потому что onWindowVisibilityChanged() говорит об этом,


Обратите внимание, что это говорит вам, является ли ваше окно становится видимым для оконного менеджера; это не говорит вам, скрыто ли ваше окно другими окнами на экране, даже если оно само видно.


I не хочу, чтобы мой BroadcastReceiver получал широковещательные сообщения, если мое представление не отображается. Хотя теперь я знаю, что его можно пометить как ВИДИМЫЙ, но перед ним может быть что-то еще на экране. Так что это ненадежно.

Подробнее здесь: https://stackoverflow.com/questions/322 ... view-class

Вернуться в «Android»