如何禁用某些部分在iOS 5中显示为TVOut?

正如我们都知道在iOS 5中,我们不需要添加单独的TVOutfunction的代码行。 他们已经将这些function作为内置function进行了整合。

我的问题是:如果在我的应用程序中有一些可用的自定义视图,我不想将其显示为TVOut演示文稿。 它应该只显示在设备上,而不是投影板上。

我已经检查了我们用于iOS版本<5.0的TVOut代码,但是他们正在捕获窗口图像并传递它。 如何禁止传递一些自定义小视图的尖叫。

任何build议/解决scheme是最受欢迎的。

看看这个video: http : //www.youtube.com/watch?gl=US&v=GysMfb4_79A

如何实现这样的事情?

编辑 :我已经使用了Apple提供的ExternalDisplay代码。 但是我在这方面面临着一个问题。

  • 该代码适用于单视图控制器,我们将所有视图添加到新窗口。
  • 如果我的应用程序包含这么多的视图控制器,以及在某些视图控制器中,我为用户提供了textViews,那该怎么办?
  • 如何避免以TVOut的forms在外部窗口显示这些文本视图,应该显示没有该textView的视图。

请build议我。

从iOS开发库中的ExternalDisplay示例代码:

要在外部显示器上显示内容,请执行以下操作:

  1. 使用UIScreen类的屏幕类方法来确定外部显示器是否可用。

  2. 如果外部屏幕可用,请获取屏幕对象并查看其availableModes属性中的值。 该属性包含屏幕支持的configuration。

  3. select对应于所需分辨率的UIScreenMode对象,并将其分配给屏幕对象的currentMode属性。

  4. 创build一个新的窗口对象(UIWindow)来显示你的内容。

  5. 将屏幕对象分配给新窗口的屏幕属性。

  6. configuration窗口(通过添加视图或设置OpenGL ES渲染上下文)。

  7. 显示窗口。

查看示例代码,您将拥有两个UIWindow对象,每个都显示想要在给定显示中显示的视图。 所以你可以有一个标志isExternalScreenUIViewController ,当它为true时,它不会显示某些视图。