UIView帧大小没有改变UIImageView放在里面
我正在一个框架中创build一个图片,然后用户可以在运行时调整框架大小。 为此,我在我的主UIViewController
创build了一个自定义的UIView
,并在这个UIView
放置了2个UIImageView
。 在xCode的Document Outline窗格中,它的层次结构是:
视图
| –ImageView
| –ImageView
我使用这行代码来改变UIView
在不同条件下的大小,它会相应地resize:
self.imageObject.frame = CGRectMake(self.imageObject.frame.origin.x , self.imageObject.frame.origin.y, 200, 200);
imageObject是我的UIView
。 当我运行它的UIView
的大小改变,但UIImageView
大小保持不变。 我也试过对我的UIImageView
做同样的事情,但没有奏效。
你也可以试试这个:
imageView.frame = CGRectMake(0,0,imageObject.frame.size.width, imageObject.frame.size.height); imageView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth; self.imageShw.contentMode = UIViewContentModeScaleAspectFit;
首先你可以试试,
self.imageObject.autoresizesSubviews = YES;
否则,为了获得子视图的大小,你可以在子视图中添加自动resize的掩码,
imageView.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
检查UIView文档以获取更多详细信息。
尝试:
imageView.frame = CGRectMake(0, 0, imageObject.frame.size.width, imageObject.frame.size.height); imageView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;