我在iOS5中的主从细节应用程序模板中将UIView置于详细视图中间时出现问题。视图的宽度小于iPad屏幕,无论设备方向如何,它都应始终显示在中央。这就是我试过的......
- (void)viewDidLoad
{
[super viewDidLoad];
[self.view setAutoresizingMask:(UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleRightMargin)];
[self.view.layer setBorderWidth:2.0F];
[self.view.layer setBorderColor:[[UIColor orangeColor] CGColor]];
// Do any additional setup after loading the view, typically from a nib.
UIView *someContainerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 600.0F, 56.0F)];
[someContainerView.layer setBorderWidth:2.0F];
[someContainerView.layer setBorderColor:[[UIColor greenColor] CGColor]];
[someContainerView setAutoresizingMask:(UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleRightMargin)];
[self.view addSubview:someContainerView];
[self configureView];
}
以下是视图的显示方式
有人可以告诉我这里错过了什么????
答案 0 :(得分:2)
好的,这就是我解决了这个问题。在创建UIView时,我改变了这个
CGRectMake((0, 0, 660.0f, 56.0F)];
到此......
CGRectMake((self.view.bounds.size.width-660.0F)/2, 0, 660.0f, 56.0F)];
由于我使用具有灵活左/右边距的自动调整遮罩,因此我实际上需要将UIView置于中心位置,以便通过在视图旋转时保持左/右边距来自动调整以实现其魔力。