XCode 15真机首次构建安装后模态ViewController出现异常
解决Xcode 15真机首次构建安装后模态ViewController渲染异常问题
清理Xcode构建缓存
首次安装出现异常大概率和Xcode 15的构建缓存有关,执行以下操作后重新构建:- 按下
Cmd+Shift+K清理当前项目的构建文件夹 - 按下
Cmd+Option+Shift+K清理Derived Data目录
清理后重新连接真机构建安装,排查是否还会出现首次渲染异常。
- 按下
调整视图呈现的生命周期时机
避免在viewDidLoad中直接触发模态VC的呈现,改为在viewDidAppear(_:)方法中执行。首次启动时视图尚未完全完成渲染,过早调用present容易触发渲染冲突:override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) let vc = YourModalViewController() present(vc, animated: true) }关闭Xcode 15增量构建
Xcode 15的增量构建机制可能在首次安装时生成异常的二进制产物,尝试关闭该选项:- 打开项目设置 -> 选择目标target
- 进入
Build Settings-> 搜索Enable Incremental Builds - 将其设置为
NO,重新构建安装。
优化主线程调度方式
如果必须依赖主线程调度,不要使用无延迟的DispatchQueue.main.async,改用极短延迟的调度,既避免渲染冲突,又不会产生明显延迟:DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { self.present(vc, animated: true) }检查模态VC的布局依赖
排查模态VC是否存在依赖异步加载资源(如网络数据、本地缓存)的布局逻辑,首次启动时这些资源未就绪可能导致布局错乱。可以在模态VC初始化时提前预加载必要资源,或者在布局完成后再执行present操作。
内容的提问来源于stack exchange,提问作者Ekaterina Polupanova
相关产品推荐
相关产品推荐

