Xcode - 删除故事面板
删除故事面板
1 - Xcode 6 取消了 Empty Application,但是创建出来的工程多出了 Main.storyboard(默认加载)。有很多人还想用代码来实现 UI 的搭建,那么如何删除 Main.storyboard ?以 Xcode 8 为例
① 首先删除 Main.Storyboard 和 LaunchScreen.storyboard 两文件
② 选中 target-general 将 Main interface 和 Launch Screen File 置空
经上两步算是删除了工程对 Main.storyboard 的依赖,但是程序运行后会是黑屏的结果
③ 原因:APP 需要指定根视图。在 AppDelegate.m 中 - (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions 的方法里面创建窗口并指定根视图
1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 2 3 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 4 self.window.backgroundColor = [UIColor whiteColor]; 5 [self.window makeKeyAndVisible]; 6 7 // 指定根视图 8 ViewController *rootVC = [ViewController new]; 9 rootVC.view.backgroundColor = [UIColor cyanColor]; 10 self.window.rootViewController = rootVC; 11 12 return YES; 13 }
运行效果:存在黑边
原因:对比一下版本 Xcode 6 后的工程就会发现 Xcode 6 是 Images.xcassets 文件,而之后的版本是 Assets.xcassets。细看里面具体的内容就会很清楚地看到它们实际上都是读取里面的 Json 文件来识别尺寸图片。不同点是 Assets 里面压根就没有 LaunchImage.launchimage 文件,这就大致解释了无法全屏显示的原因。如果想深入分析可进入到 BrandAssets.launchimage 和 LaunchImage.launchimage 文件中去查看下 Json 数据就会明白
④ 如何实现全屏
方式一:在 info.plist 文件里新增键值对儿(字符串类型) Launch screen interface file base name = nil
方式二:选中 Assets.scassets 文件,在右旁区域右键选择 New Image Set,命名 LaunchImage。然后在 info.plist 文件里新增键值对儿(字符串类型) Launch screen interface file base name = LaunchImage
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)