如何以编程方式在iPhone中自动调整屏幕方向的子视图?

时间:2010-05-19 11:35:20

标签: iphone screen-orientation

我创建了一个UIViewController类,背景颜色为红色。 我还创建了一个UIView,它是一个子视图,并放置了背景图像和两个UIButtons。 我给屏幕方向的编码是

 -(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}

self.view =[[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
self.view.backgroundcolor =[UIColor redColor];
UIView *subview;
subview = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
subview.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@""]];
subview.autoresizingMask = UIViewAutoResizingFlexibleWidth |UIViewAutoresizingFlexibleHeight;

问题:

当我变成横向时,子视图会根据图像调整大小,但按钮保持在同一位置,我没有使用任何.xib文件。我已经以编程方式创建了项目。请回复....

1 个答案:

答案 0 :(得分:0)

为您的班级覆盖layoutSubviews。您可能需要从[self setNeedsLayout]

明确调用didRotateFromInterfaceOrientation