【发布时间】:2012-11-29 23:04:27
【问题描述】:
我有一个UIViewController(进一步称为“UIVC”),其中包含大量代码,我需要在其上显示另一个视图(评分表),它本身也有一堆代码及其使用 IB 设计的视图,所以它也有自己的 IB 连接。所以我决定把它分成两个UIViewControllers,这很明显。一切正常,但我仍然需要呈现我的分数表,不像另一个UIViewController,而是像通常的UIView 一样使其半透明,以便用户可以通过分数表视图看到主要UIVC 中发生的事情(由于到它的透明度)。此外,我需要让 main UIVC 中的代码仍然运行。
很好的例子是 Counter Strike 游戏(以及许多其他游戏),当您在游戏中按 TAB 键时,您可以看到得分表,但它不支持游戏,您可以看到游戏中发生的事情。
我在想我可以使用presentModalViewController(如Game Center)来实现它,但我不能让它透明,所以我在后台看不到UIVC。就像我说的分数表有自己的代码和许多 IBOutlets 一样,我想将它与主要的UIVC 代码分开。
那么如何实现我的需求呢? (分离出分数表的代码,使其透明并且不要中断执行 main UIVC's 代码)。我的应用程序不是可可,它只是普通的应用程序
我所做的尝试:尝试制作分数表的UIView 背景[UIColor clearColor],同时将其呈现为modalVC。没有运气。此外,我尝试取消选中 UIView's opaque 属性 - 不走运。尝试将UIView's alpha 设置为 0.5 - 仍然没有运气。还试图让 self.navigationController.view.hidden=YES,没有运气。看不到主要的 UIVC“图片”。此外,我尝试在分数表中将所有子视图 alpha 设置为 0.2,但它仍然显示白色非透明屏幕。
【问题讨论】:
标签: iphone ios ipad uiview uiviewcontroller