Загрузка изображения в потоке делает переход навигации прерывистым - PullRequest
0 голосов
/ 28 октября 2011

У меня есть приложение, в котором пользователь нажимает на миниатюру фотографии, которая запускает следующий контроллер просмотра, который будет помещен в стек навигации, который отвечает за отображение увеличенной версии изображения. Когда нажата кнопка миниатюры фотографии, я отправляю ссылку на псевдоним фотографии следующему контроллеру представления, который загружает ее в метод viewDidLoad следующим образом:

dispatch_async(dispatch_get_main_queue(), 
^{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    UIImageView *tempMyImageView = [[UIImageView alloc] initWithImage: [UIImage imageWithCGImage:[[[self myAsset] defaultRepresentation] fullScreenImage]]];
    [self setMyImageView: tempMyImageView];
    [myViewContainer addSubview: [self myImageView]]; 
    [tempMyImageView release];
    [pool drain];
});

Кажется, все работает нормально, за исключением того, что когда я отправляю большое изображение (например, то, которое я снял с камеры), навигационный переход прерывистый. Кто-нибудь знает как это исправить?

1 Ответ

0 голосов
/ 28 октября 2011

Вы можете попробовать загрузить изображение после завершения перехода.

Также следует отметить, что вы на самом деле не делаете это в новом потоке, как вы указали основную очередь. Не то чтобы это было бы хорошей идеей, поскольку вы не хотите выполнять код пользовательского интерфейса в другом потоке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...