首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Widescreen 16:9 airplay输出设置iPad应用程序视图层次结构

如何使用Widescreen 16:9 airplay输出设置iPad应用程序视图层次结构
EN

Stack Overflow用户
提问于 2012-07-11 00:46:53
回答 1查看 659关注 0票数 0

我想创建一个iPad应用程序,除了正常的ipad屏幕(4:3)使用第二个UIScreen包含一个16:9宽屏格式的UIWindow,如果连接了第二个屏幕。

我使用AppleTV进行连接。

我不仅想把ipad的屏幕镜像到电视上,因为那样它就只是一个4:3的画面--我想让它使用整个16:9的宽屏。

因此,我开始并设置了第二个UIScreen,窗口现在在电视上以宽屏格式显示,背景为绿色。

代码语言:javascript
复制
//Check for Second Screen and if available, make a second UIWindow and put it on the      second screen
NSArray* connectedScreens = [UIScreen screens];
NSInteger numberOfScreens = [[UIScreen screens]count];
NSLog(@"Number of screens connected: %d",numberOfScreens);

if (numberOfScreens > 1) {
    //we have a second screen connected, display an extra window on the second screen
    UIScreen* secondScreen = [connectedScreens lastObject];
    UIWindow* secondWindow = [[UIWindow alloc]initWithFrame:secondScreen.bounds];
    secondWindow.backgroundColor = [UIColor greenColor];
    [secondWindow setScreen: secondScreen];
    [secondWindow makeKeyAndVisible];
    self.tvWindow = secondWindow;
}

到目前一切尚好。

但现在我不确定如何设置导航/视图层次结构。

我想在两个UIScreens (ipad + TV)上显示相同的数据,只是针对不同的屏幕尺寸进行了优化。

由于我有完全相同的数据应该显示,我不想有不同的实例,类似的视图到处漂浮,我想我可以使用两个xib文件每个ViewController,一个为4:3 ipad view放入viewController的'view‘属性,一个xib为16:9宽屏电视,放入同一个viewController的’tvView‘属性。

ipad UIWindow有一个UINavigationController,可以旋转不同的UIViewControllers。

因此,如果我将一个ViewController推到ipad Window的导航控制器上,我就可以将TV-xib中相应的tvView添加到电视屏幕的UIWindow中。

我这条路走对了吗?你会怎么做呢?

一小段素描:

:)

EN

回答 1

Stack Overflow用户

发布于 2012-07-11 01:35:14

这听起来是对的。如果你允许用户与你的导航控制器交互,你必须注册为控制器的delegate,这样你就可以在iPad上跟踪你的导航栈的变化,并相应地交换你的电视视图。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11418044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档