我有一个带有许多UIViews的滚动视图,这些视图有UIImageViews - 我在滚动时加载图像。
所以每个页面都有4个这样的视图,它们在开始时被预加载到滚动条,并且我在滚动时加载下一页图像。 我在另一个线程中这样做,但是,滚动条不能完全滚动,如果你看起来很好,它有一些微小的电影。
这是加载它们的函数:
-(void)loadMainImageToIndex:(int)index
{
NSDictionary *dic=[mainData objectAtIndex:index];
NSString *userImageUrl=[dic objectForKey:@"url"];
NSURL *userUrl=[NSURL URLWithString:userImageUrl];
[self downloadImageWithURL:userUrl completionBlock:^(BOOL succeeded, NSData *tdata)
{
if (succeeded)
{
//load back
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^
{
UIImage *image=[UIImage imageWithData:tdata scale:0.25];
if (image)
{
UIGraphicsBeginImageContextWithOptions(image.size, NO, image.scale);
[image drawAtPoint:CGPointZero];
image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
}
dispatch_async(dispatch_get_main_queue(), ^
{
UIImageView *view=[mainImagesArray objectAtIndex:index];
});
}
}];
该网址已加载Asynch。
答案 0 :(得分:0)
原来,观点阴影导致了这件事:
//self.layer.shadowOffset=CGSizeMake(6.0, 6.0);
//self.layer.shadowColor=[UIColor blackColor].CGColor;
//self.layer.shadowRadius = 3;
//self.layer.shadowOpacity = 0.7;
删除它可以解决问题。
self.layer.shouldRasterize = YES; //solve the problem,