我的iphone应用程序支持纵向和横向。要在新的iphone 5中执行此操作,iOS 6引入了一个名为auto layout constraint的新属性。但我需要支持iOS 5和iOS 6的应用程序。所以我不能使用这个约束。有没有办法在不使用自动布局的情况下进行纵向和横向拍摄?
答案 0 :(得分:2)
是的,你可以很容易地做到这一点。
适用于iOS6
UIViewControllers,你只需要PORTRAIT模式,编写这些函数
- (BOOL)shouldAutorotate
{
return YES;
}
- (NSUInteger)supportedInterfaceOrientations
{
return (UIInterfaceOrientationMaskPortrait);
}
对于需要LANDSCAPE的UIViewControllers,将屏蔽更改为All。
- (NSUInteger)supportedInterfaceOrientations
{
return (UIInterfaceOrientationMaskAllButUpsideDown);
//OR return (UIInterfaceOrientationMaskAll);
}
现在,如果您想在Orientation更改时进行一些更改,请使用此功能。
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
}
适用于iOS5
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
if (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) {
return YES;
}
return NO;
}