我用它来改变模态对话框的宽度和高度
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterface {
if (UIInterfaceOrientationIsLandscape(self.interfaceOrientation)) {
self.view.superview.frame = CGRectMake(74, 170, 380.0f, 712.0f);
}
}
self.view.superview.frame = CGRectMake(74, 170, 380.0f, 712.0f);
可以在一个景观上工作,但是当您绕着y位置转动iPad时会降低。它需要与两个景观处于相同的y位置。
修改
这种缝合起作用。不确定它是否是最好的答案。会接受更好的答案。
if (UIInterfaceOrientationIsLandscape(self.interfaceOrientation)) {
self.view.superview.frame = CGRectMake(174, 170, 380.0f, 712.0f);
self.view.superview.transform = CGAffineTransformTranslate(self.view.superview.transform,0,-72);
}
答案 0 :(得分:0)
如果我们在这里谈论一个在PresentModalViewcontroller的帮助下呈现的UIVIewcontroller。 我们不应该改变视图控制器的高度和宽度。 演示风格由apple提供: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/c/econst/UIModalPresentationFormSheet
此外,如果您想创建自定义模式,您可以通过在简单的UIViews上使用CATransition进行转换来创建。