ios – UIImageView上的SizeToFit无法正常工作
我有一个UIImageView加载在ios文件系统上的文件目录的图像。
问题是,当我打电话
[imageView sizeToFit];
这是行不通的。 我认为这是因为图像还没有完全加载,所以sizeToFit部分被调用之前,它有图像的宽度和高度。
请有人指出我的修复方向吗?
这是我的代码:
imageView.contentMode = UIViewContentModeScaleAspectFit; imageView.image = [UIImage imageWithContentsOfFile:[FileOperations getLibraryPath:[NSString stringWithFormat:@"%d.png", listData.imageId]]]; [imageView sizeToFit]; [imageScroll setContentOffset:CGPointMake(0, 0)]; imageScroll.contentSize = imageView.frame.size; imageScroll.decelerationRate = UIScrollViewDecelerationRateFast; imageScroll.minimumZoomScale = 1; imageScroll.maximumZoomScale = 2; [imageScroll setZoomScale:imageScroll.minimumZoomScale]; [imageScroll addSubview:imageView];
谢谢,阿什利
检查图像大小:
NSLog(@"%@", NSStringFromCGSize(imageView.image.size));
您可能想要手动设置基于图像大小的imageView
框架,例如,如果图像太大而不适合imageView
的超级视图。
UIImageView *myImage = [[UIImageView alloc]init]; myImage.contentMode = UIViewContentModeScaleAspectFit; myImage.image = [UIImage imageName:@"image.png"]; [self.view addSubview:myImage];
sizeToFit
应该在你的情况下工作,但如果UIImage是零,则失败。
UIImage的imageWithContentsOfFile:
返回一个(完全加载)的参考UIImage
或nil
。 你确定你正在通过正确的道路吗?