您的位置:首页 > 移动开发 > Swift

swift3 删除main.storyboard之后(纯代码做项目)

2017-05-05 16:51 399 查看
第一步:先右键删除左侧项目导航栏中的main.storyboard文件

第二步:在删除了story之后此时若直接运行项目,结果会报错

错误信息

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'Main'
原因是此时虽然删除了story文件,但是每个项目在创建时会被赋予一个必须"输出"到main.storyboard的选项,此时需要将这个选项删除



第三步:这是运行项目,并不会报错,但是结果是一片黑,这时候是因为项目并没有一个"输出口",所以我们要设置一个“输出口”



此时需要打开Xcode左侧的项目导航栏打开AppDelegate.swift  , 在 

func application(_ application:UIApplication,
didFinishLaunchingWithOptions launchOptions:[UIApplicationLaunchOptionsKey:Any]?)方法中设置“输出口”
代码如下

//删除Main.storyboard后需要做的事情
let screen = UIScreen.main.bounds        //获得设备尺寸
self.window = UIWindow.init(frame: screen)	//给“输出窗口“实例化并设置frame
let viewController = ViewController()			//实例化一个ViewController
let navigationController = UINavigationController(rootViewController: viewController)  //为ViewController设置一个导航栏
self.window?.rootViewController = navigationController	//将“输出窗口”的根视图设置为导航栏
self.window?.makeKeyAndVisible()		//  设置"输出窗口可见"
这时候对输出窗口就设置好了,但是此时若运行项目,结果还是显示一片黑,这是因为实例化ViewController时,其中的子ViewController会拥有一个view,而这个View在ViewController初始化的时候会被自动赋为纯黑的背景色

此时只需要在ViewController中的ViewDidload()方法中将View背景色设置为其他颜色就可以
e.g    self.view.backgroundColor
= UIColor.brown     (在ViewController中)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: