将子视图添加到外部屏幕 (iOS5)

Posted

技术标签:

【中文标题】将子视图添加到外部屏幕 (iOS5)【英文标题】:Adding a Subview to an external Screen (iOS5) 【发布时间】:2011-10-29 10:58:39 【问题描述】:

我有一个视图控制器,称为 TVOutViewController (.h & .m),它应该处理我的外部屏幕。我如何“告诉”视图控制器这样做?

我已经做了什么:

NSLog(@"Current Number of screens: %i", [[UIScreen screens] count]);


if([[UIScreen screens]count] > 1) 

    CGSize maxSize;
    UIScreenMode *maxScreenMode;

    for(int i = 0; i < [[[[UIScreen screens] objectAtIndex:1] availableModes]count]; i++)
    
        UIScreenMode *current = [[[[UIScreen screens]objectAtIndex:1]availableModes]objectAtIndex:i];
        if(current.size.width > maxSize.width)
        
            maxSize = current.size;
            maxScreenMode = current;
        
    
    UIScreen *externalScreen = [[UIScreen screens] objectAtIndex:1];
    externalScreen.currentMode = maxScreenMode;

所以现在我的阵列中有一个外部屏幕(并且已识别)。但是如何在这个屏幕上添加(例如)标签?

有没有类似的方法:

 Screen Handled by the TVOutViewController = TheExternalScreen //Pseudocode
 [Screen Handled by the TVOutViewController addSubview: aLabel]; //Pseudocode

谢谢!

【问题讨论】:

【参考方案1】:

知道了。 UIWindow 必须定义为GLOBALLY

【讨论】:

你能澄清一下吗?我正在使用情节提要,我应该添加什么才能使代码高于工作? 在您的.h-File 中定义UIWindow【参考方案2】:

查看此示例代码: https://github.com/quellish/AirplayDemo

这几乎可以满足您的需求。

【讨论】:

以上是关于将子视图添加到外部屏幕 (iOS5)的主要内容,如果未能解决你的问题,请参考以下文章

如何将子视图添加到 UITableViewCell

无法将子视图添加到我的 UIView

将子视图添加到另一个子视图不起作用

iphone - 将子视图添加到窗口后无法推送模态视图?

辅助屏幕的 makeKeyAndVisible 阻止 UIMenuController 出现

如何从外部视图控制器转到标签栏项目