Three20 - Попытка обновления TTThumbsViewController застревает на «Загрузка ...» - PullRequest
1 голос
/ 08 сентября 2010

Я использую TTThumbsViewController для отображения галереи.Пользователи могут загружать фотографии на сервер, и когда загрузка завершена, я отправляю уведомление, которое я получаю дальше, вверх по стеку навигации в TTThumbViewController, где я хочу перезагрузить галерею, чтобы при переходе пользователя назад галерея включала свои новые добавленныефотография.

В моем подклассе TTThumbsViewController при получении уведомления я вызываю следующее:

[self invalidateModel];
[self reload];

В результате появляется сообщение «Загрузка» с помощью счетчика, но оно застревает там.,Надеясь, что кто-то может подтолкнуть меня в правильном направлении.Спасибо!

Другие вещи, которые я пробовал:

[self invalidateModel];

или

[self invalidateModel];
[self reload];
[self updateView];

или

[self invalidateModel];
[self reloadIfNeeded];

Я просмотрел этоТАК вопрос и попробовал подход:

обновить TTThumbsViewController по кнопкеНажмите в Three20

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Используйте следующий код

создание модели

- (void)createModel {


    [self setPhotoSourceToView];

}

Настройка NSNotification

NSNotificationCenter defaultCenter] addObserver:self selector:@selector(setPhotoSourceToView) name:NOTIF_UPDATES object:nil]; 

Функция setPhotoSourceToView

- (void)setPhotoSourceToView {
       if (!doPhotoSource) {
                //call to datasource
                XXXPhotoSource=[[XXXThumbnailPhotoSource alloc]initWithURL:urlForDo ];

                }
            self.photoSource = XXXPhotoSource;

        }
}

Это прекрасно работает

0 голосов
/ 14 марта 2012

Я только что сделал это, и у меня все заработало.

[self reload];

...