Ios 使用superview的帧更改调整子视图的大小

Ios 使用superview的帧更改调整子视图的大小,ios,animation,Ios,Animation,我有一个iImageView aSuper;当我翻转该视图时,该视图正在更改其大小,即它将采用下一帧和下一帧的大小,依此类推 现在,这个UIImageView包含一个子视图,它也是imageview。我称之为bSubView 现在,我想在每次父视图的图幅更改时调整此bSubView的大小 代码是:-此处invisibleView是子视图,viewHolder是父视图。父视图正在向右更改,但问题在于子视图 UIImage *image=[UIImage imageWithData:[NSData

我有一个iImageView aSuper;当我翻转该视图时,该视图正在更改其大小,即它将采用下一帧和下一帧的大小,依此类推

现在,这个UIImageView包含一个子视图,它也是imageview。我称之为bSubView

现在,我想在每次父视图的图幅更改时调整此bSubView的大小

代码是:-此处invisibleView是子视图,viewHolder是父视图。父视图正在向右更改,但问题在于子视图

 UIImage *image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:imageString1]]];

            UIImageView *viewHolder=[[UIImageView alloc] initWithFrame:CGRectMake(510, 200, 20, 20)];

              invisibleView=[[UIImageView alloc] init];
              invisibleView.image=image;               
              invisibleView.frame=viewHolder.bounds;

            viewHolder.autoresizesSubviews=YES;
            [ invisibleView setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
            invisibleView.contentMode=UIViewContentModeCenter;                
            viewHolder.image=[UIImage imageNamed:@"EmptyPlanet"];                  
            [viewHolder addSubview:invisibleView];  

            [self.view addSubview:viewHolder];

非常感谢。

您可以使用继承的方法-voidLayoutSubview

当超级视图的帧发生变化时,将在超级视图上调用此方法。在该方法中,您可以配置子视图


另一个选项是在配置子视图时使用自动布局

翻转动作后,只需添加这一行。invisibleView.frame=viewHolder.bounds;是的,但它正在裁剪UIImageViewsubview保存的图像?向其添加属性scalesToFit。那很好。