UIScrollView подпредставлений и setNeedsDisplay - PullRequest
1 голос
/ 15 декабря 2011

У меня следующая проблема:

У меня есть UIView, содержащий UIScrollView в качестве подпредставления. (файл пера). Программно я добавляю несколько подпредставлений (UIImageView) в UIScrollView, каждый UIImageview содержит изображение, загруженное из сети асинхронно, поэтому мне нужно обновить scrollView при загрузке изображений. В классе, отвечающем за выборку изображений, я объявляю контроллер View, отвечающий за управление scrollView, используя этот код

[[(MosaicViewController *)data] scrollView setNeedsDisplay];

Данные Ivar - это указатель на ViewController. Этот материал не работает, перезагрузка scrollView не происходит Чтобы быть уверенным, что вызов инициирован, я написал метод внутри viewController, содержащий scrollView, и внутри этого метода я вызвал setNeedsDisplay,

[(MosaicViewController *)data updateView];

-(void) updateView
{
    NSLog(@"setNeedsDisplay");
    [self.scrollView setNeedsDisplay];
}

метод updateView срабатывает корректно, я имею в виду, он вызывается после каждой загрузки изображения, но содержимое scrollView не обновляется. В ViewController, содержащем scrollView, я не реализую метод drawRect, может ли это быть причиной отсутствия обновления после вызова setNeedsDisplay?

Любая помощь / предложение / ссылка и т. Д. Приветствуется Заранее спасибо

1 Ответ

0 голосов
/ 17 декабря 2011

Чувак, ты делаешь imageView.image = downloadImage ??

Также вам не нужно делать [self.scrollView setNeedsDisplay], так как вы ничего не меняли в scrollView !!

Что изменилось, так это содержимое imageView и imageView.image =loadedImage автоматически вызовет setNeedsDisplay на imageView !!

Некоторые другие контрольные точки

Виден ли scrollView? Установлен ли scrollView.contentSize ?? Является ли кадр scrollView правильным ??

...