我有一个UIScrollView,它包含不同的UIView容器。每个容器必须加载六个UIImages。滚动时我需要调整“layoutSubviews”方法中的内容。 不幸的是,当新容器和图像被创建时,加载这些图像会影响打嗝。
我通过“dispatch_async”加载图像异步。我还使用了小的32x32px缩略图,它将被全图像256x256px图像替换。不幸的是它的口吃......
这是这种UIView的“initWithFrame”方法的代码。 这些UIViews稍后将作为子视图添加到UIView容器中。
// load ThumbnailImage and replace it later with the fullImage
NSString* thumbImageName = [self.data.imageName stringByAppendingString:@"_small"];
NSString* fileLocation = [[NSBundle mainBundle] pathForResource: thumbImageName ofType:@"png"];
UIImage* image = [UIImage imageWithData:[NSData dataWithContentsOfFile:fileLocation]];
[self setBackgroundImage:img forState:UIControlStateNormal];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
dispatch_async(dispatch_get_main_queue(), ^{
NSString* fileLocation = [[NSBundle mainBundle] pathForResource: self.data.imageName ofType:@"png"];
UIImage* image = [UIImage imageWithData:[NSData dataWithContentsOfFile:fileLocation]];
[self setBackgroundImage:img forState:UIControlStateNormal];
});
});
这是将图像加载到UIView的更快捷方式吗? 当在不同的全屏图像之间滚动时,Apple如何在“Photo.app”中实现真正流畅的图像视图?
我不知道使用CoreImage是否有意义? 任何建议都会很棒!
感谢您的帮助和时间。 祝你有愉快的一天。