【发布时间】:2015-03-06 03:47:16
【问题描述】:
我有一个UIImageView,它全屏显示为“背景”。每当我将viewdidload 中的图像设置为默认值时,contentMode 就可以正常工作。
但是,当我这样做时:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
self.pickedPhotoImageView.contentMode = UIViewContentModeScaleAspectFit; // set desired contentMode here
self.pickedPhotoImageView.clipsToBounds = YES;
self.pickedPhoto = image;
[self.pickedPhotoImageView setImage:image];
[self dismissViewControllerAnimated:YES completion:nil];
}
对contentMode 的所有尊重都消失了,拍照时只显示了一小部分照片。 UIImageView 怎么会像这样失去对属性的尊重?
【问题讨论】:
-
设置新图片后尝试设置内容模式。
-
不,也不起作用..我也在 viewdidload 中设置它。每次设置新照片后设置 contentMode 是否常见?
-
你在 UIImageView 上设置了约束吗?我想知道 imageView 是否由于设置了更大的图像而增长。您可以检查的一种方法是在设置图像后使用 Xcode 6 中的“调试视图层次结构”。
-
甜,就是这样!谢谢@ryanwils。如果您回答我的问题,我会将其标记为正确。您能否在答案中解释为什么在添加大图片时它会调整大小,即使我已经将它剪裁到边界并设置 contentMode?span>
-
很高兴听到它成功了!我在下面添加了我的答案。干杯!
标签: ios objective-c cocoa-touch uiimageview