У меня есть пользовательский вид EditText. Она распространяется по умолчанию один и добавляет возможность показать TimePickerDialogFragment, а NumberPickerDialogFragment и подобный ...Как автоматически отменить регистрацию пользовательского вида (из xml) на шине
Всех моих FragmentDialogs работают с системной шиной, чтобы сделать реплантации к родительскому деятельности ... ненужному
Обычно я регистрирую все объекты при создании и отмене их регистрации в onPause
их родительской активности ... Для этого я использую ограниченную шину, которая сохраняет ссылки на все зарегистрированные объекты и автоматически регистрирует их в действии onPause
. Эта работа оптимальна до сих пор. Все мои пользовательские классы используют конструктор, который получает ссылку на ограниченную шину ... Таким образом, класс должен только регистрироваться на ограниченной шине и больше не нужно отменить регистрацию, так как это будет автоматически.
Теперь регистрация моего пользовательского edittext не проблема, но как автоматически отменить его регистрацию? Я добавляю представления в XML, и я не хочу, чтобы их все вручную добавляли в мою ограниченную шину.
Есть ли у кого-нибудь идеи, как незарегистрировать можно как-то автоматизировать?
Выполняете ли вы какой-либо интерфейс для приема событий шины или на основе аннотации? В обоих случаях вы можете onPause вашей деятельности ходить через детское дерево и отменить регистрацию, если они реализуют интерфейс или аннотированный метод. –
Но мы для меня взгляды не должны знать о автобусе от точки дизайна. Фрагмент или активность должны управлять состоянием представлений на основе события. –
это аннотация, основанная ... Я рассмотрю использование вашей идеи и проверку, если существует метод аннотации ... просто нужно посмотреть, как это можно сделать ... – prom85