我正在创建一个自定义视图(UIView 的子类),其目的是将静态背景图像、静态边框/框架叠加层以及几个可以在视图周围旋转、拉伸和拖动的较小图像(在整个视图导出为图像之前)。
我坚持从另一个视图中显示这个自定义视图。这些图像来自 iPhone 相机,它具有非常高的分辨率,到目前为止,我唯一能做到的就是切断大部分图像或让我的视野越过屏幕末端。我需要能够在不编辑图像的情况下将其与菜单项等一起显示(以便可以以完整形式发送)。
我还将图像添加到全屏视图,它仍然不会改变大小。
我正在初始化视图如下
- (id)initWithImage:(UIImage *)image
{
self = [super init];
if (self) {
[self setClipsToBounds:YES];
[self setAutoresizesSubviews:YES];
[self setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight];
_image = image;
_imageView = [[UIImageView alloc] initWithImage:_image];
[_imageView setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight];
[self addSubview:_imageView];
}
return self;
}
我将它添加到另一个视图
self.card = [[SGImageCard alloc] initWithImage:[SGCardDataController cardImage]];
[self.cardPlaceHolder setAutoresizesSubviews:YES];
[self.cardPlaceHolder setContentMode:UIViewContentModeScaleAspectFit];
[self.cardPlaceHolder addSubview:self.card];
该视图也已在 Interface Builder 中设置,并设置为自动调整其子视图的大小并设置为 cliptobounds(有时 - 我已经尝试了两种方式)。我已经在 viewdidload 中添加了我的视图(当占位符没有它的框架时,由于我不知道的原因),以及后来,当它有时(并且它不起作用)。
我错过了什么?(我是否以正确的方式解决了这个问题?)