Uitabbaritem не тускнеет на первой отключенной нагрузке

StackOverflow https://stackoverflow.com/questions/3594626

Вопрос

Я могу легко включить и отключить TabBarItems В моем приложении, которые не имеют значения или контента. Работает как очарование. Я хочу сохранить все вкладки, чтобы показать, что эта функция или контент будут доступны на других представлениях по всему приложению, поскольку этот специальный вид динамически заполнен контент более 30 ×.

То TabBarController подклассуется в моем »DetailViewController«. В рамках этого класса я проверю, существует ли какое-либо содержание и ленивая нагрузка содержимого, передавая на viewWillAppear Событие (предотвращение загрузки не существующей вкладки содержимое и проверка подключений к Интернету и т. Д.). Работает быстро и хорошо.

Проблема гораздо больше дизайна оптическая. Загрузка представлений в первый раз, позволяющий и отключить работы, но фотографии не являются «мерзкий«. Загрузка второго представления и прохождение одинаковой процедуры делает»смущать«Инвалидные вкладки ... что я скучаю?

Это было полезно?

Решение

Я бы дважды подумал, прежде чем позвонить ViewWillAppear на self Как результаты могут быть непредсказуемыми.

// BAD IDEA
- (void)viewDidLoad {
    ...
    [self viewWillAppear];
    ...
}

// OK
- (void)viewWillAppear {
    ...
    [super viewWillAppear];
    ...
}

... исключение в том, что ваш призыв к [Super ViewWillAppear] из в том же именованном методе.

В целом, лучше оставить стрельбу обратных вызовов Apple к Apple. Попробуйте рефакторирование функциональности, которые вы попали в ViewWillAppear, а затем звоните только то, что вам нужно в ViewDidload, ViewWillAppear и ViewDiDiDiDAppear. Проблема, скорее всего, возникает по мере роста каждого бита функциональности.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top