如何在运行时更改 NIB 的视图出口?苹果手机



基本上我试图运行我的应用程序的免费版本和相同的代码的付费一个。免费的会有app,在nib文件中主视图是UIView,付费的主视图是UITableView。

当我将IB中的文件所有者下的视图出口设置为我想要的任何一个时,视图正常工作,但我无法在运行时更改。

我怎么能在运行时改变视图输出属性这样我就能做一个检查比如如果app是空闲的然后让UIView成为视图如果它不是空闲的那么UITableView就是视图?

谢谢。

编辑:我有点模糊,所以这里有更多的细节。我想让iad贯穿我的应用,一个横幅通过带表视图的导航控制器共享。我想下面的导航栏和以上的视图内容的横幅。为了给横幅创建空间,我让视图控制器由一个视图和视图内部的表视图组成。然后我调整表格视图的大小,使其向下允许一个横幅。如果我把视图出口设为tableview tableview会全屏显示,正常。如果我把视图出口设为UIView,同样的nib,我就会把tableview放低,加空格来添加iAd。我希望我能做一个检查,在运行时改变这些出口,为iAd获得全屏tableview或部分屏幕。

遗憾的是,然而,在我得到这个之后,我不知道如何在表视图之间共享iAd横幅。

快速&肮脏的解决方案是将UIView &在同一笔尖上的UITableView(一个在另一个的上面)&在运行时隐藏其中一个。所以,你不需要改变outlet,只需要去掉不需要的那个

创建2个nib,每个nib由2个不同的视图控制器控制,在启动时,检测应用程序的版本,并加载相应的视图控制器。

如果你想只有一个视图控制器,那也很好。你可以制作2个独立的nib,每个nib都属于同一个视图控制器,在启动时,检查应用是哪个版本,并使用-initWithNibName:bundle:加载适当的nib。希望这对你有帮助!

最新更新