【发布时间】:2016-09-18 10:34:50
【问题描述】:
所以,我有一个应用程序,它的根视图控制器有一个菜单栏控制器类,我将其命名为 MenuTabBarController,它包含多个 UIViewControllers。其中一个视图控制器是我称之为HomeViewController 的主页,它在应用程序加载时显示,因为它占据索引0 位置。我要做的是在MenuTabBarController 的viewDidLoad 方法中创建一个子视图,但将此子视图放在HomeViewController 中。这是我想出的
let homeViewController = HomeViewController()//An instance of HomeViewController created at global level
class MenuTabBarController: UITabBarController,UITabBarControllerDelegate,UIPopoverPresentationControllerDelegate{
var mainBox: UIView!//This is the sub view reference declared as an optional
override func viewDidLoad()
super.viewDidLoad()
self.delegate = self
mainBox = UIView(frame: CGRectMake(0,0,200,200))//Initialize mainBox
homeViewController.view.addSubview(mainBox)//Attempt to add mainBox to homeViewController
}//End viewDidLoad
}//End class definition
没有添加 mainBox,因为当我尝试运行应用程序时,一个空白页面盯着我看。如果我像这样将 mainBox 添加到菜单栏的视图中
self.view.addSubview(mainBox)
它被添加。但是如何将其添加到 homeView 中?
【问题讨论】:
标签: ios swift uiview uiviewcontroller uitabbarcontroller