2011-01-29 69 views
2

请原谅我一个noob问题,它是我的第一个,我诚实地花了相当大的努力寻找我自己的解决方案。使用设备方向来实现模式视图控制器

我有一个项目有两个视图控制器。主要只是一个纵向视图,而第二个(子)模式视图控制器只能以横向模式显示。我的目标是让设备的方向自己切换控制器(并且为模式视图控制器提供一个函数调用,同时传递来自主视图控制器的某些ivars),同样我想重新调整为纵向解除模态视图并回到起点。

我想这是苹果自己的计算器应用程序的工作原理?任何人都可以给我一个线索,了解最符合API的方法吗? 非常感谢你的时间。

我非常希望避免“返回”或“完成”按钮,在模式的看法,并来回换用设备方向只有当这是在所有可能的

+0

什么你的意思做(子)语气?你确定你的一个视图控制器必须是模态的吗? – 2011-01-29 23:14:36

+0

克里斯,嗨..没有我不那么肯定我需要第二个控制器,也许只是一个不同的观点.. – Jef 2011-02-02 03:16:12

回答

1

如果您在-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration为您的视图中启用旋转然后,您可以检查方向,因此这样的行为:

-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{ 

    if(UIInterfaceOrientationIsLandscape(toInterfaceOrientation)) 
    { 
    //check if modal viewController is already alive 
    //pop the modal if needed 
    } 
    else 
    { 
    //destory the modal if its still alive 
    } 
} 
3

苹果有一个很好的解释并为您想要做的事情准确地提供示例代码。见视图控制器编程指南中的Creating an Alternate Landscape Interface

+0

非常感谢你,非常感谢.. – Jef 2011-02-02 03:15:18

相关问题