使用XIB方式创建的项目情况
1.新建工程,User Interface选择 XIB
2.创建自己APP启动的首页,如下
3.在APPDelegate添加加载窗口的代码
private var mainWC:WQMainWindowViewController?
func applicationDidFinishLaunching(_ aNotification: Notification) {
mainWC=WQMainWindowViewController(windowNibName:"WQMainWindowViewController")
mainWC?.window?.center()
mainWC?.window?.orderFront(nil)
mainWC?.contentViewController = WQMainViewController()
// Insert code here to initialize your application
}
4.运行应用,发现打开了两个window,一个是自己的WQMainWindowViewController的window,一个是系统默认的,下面去掉系统默认的window
取消Visible At Lanunch 勾选运行,问题解决。
对于创建项目时使用了storyboard工程情况,下面删除Main.storyboard文件
1.新建工程User Interface选择storyboard
2.新建MainMenu.xib,Main interface选择XIB
3.添加加载APP的代码
4.运行,发现窗口不会打开,且applicationDidFinishLaunching不执行。在MainMenu.xib中添加window控件
5.在MainMenu.xib的Objects添加delegate(可以把使用xib方式创建工程的MainMenu.xib文件的Delegate拖拽过来)
6.在Appdelegate中添加window对象
7.添加跟window的关联
8.最后,取消默认的启动的window
,
网友评论