Xcode 15中#Preview宏适配Storyboard的UIKit视图控制器白屏问题咨询
UIKit ViewController用#Preview宏预览空白的问题解决
这不是#Preview宏的普遍限制,是操作时没正确从storyboard加载视图控制器导致的。
直接用ViewController()实例化的方式不会自动读取storyboard里的布局,要通过storyboard来初始化才能加载对应的图形元素,正确的预览代码示例:
#Preview { // 加载Main.storyboard let storyboard = UIStoryboard(name: "Main", bundle: nil) // 初始化初始视图控制器(如果你的VC是storyboard的初始页面) guard let viewController = storyboard.instantiateInitialViewController() else { // 初始化失败时返回空白VC兜底 return UIViewController() } return viewController }
如果你的ViewController不是storyboard的初始页面,需要先在storyboard里给该VC设置Storyboard ID(在右侧属性面板的Identity Inspector里设置),然后用以下代码:
#Preview { let storyboard = UIStoryboard(name: "Main", bundle: nil) let viewController = storyboard.instantiateViewController(withIdentifier: "你的VC标识符") return viewController }
常见的操作疏漏点:
- 没给ViewController设置正确的Storyboard ID,或者实例化时ID拼写错误
- 直接用空初始化方法
ViewController()创建实例,跳过了storyboard布局加载流程 - storyboard文件名拼写错误(注意区分大小写,比如把"Main"写成"main")
内容的提问来源于stack exchange,提问作者brainray
相关产品推荐
相关产品推荐

