如何在两种横向模式objective-c中保持模态对话框接近顶部

时间:2013-04-24 07:54:59

标签: ios objective-c modal-dialog transformation

我用它来改变模态对话框的宽度和高度

- (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);

        }

1 个答案:

答案 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进行转换来创建。