Xcode 15中previewInterfaceOrientation失效?如何设置预览横屏方向?
Xcode 15 SwiftUI预览横屏失效的解决方法
Xcode 15(包括15.0.1版本)确实调整了SwiftUI预览的方向配置逻辑,原有的.previewInterfaceOrientation修饰器在部分场景下会失效,以下是几种可行的解决方法:
使用预览块参数直接指定方向
这是Xcode 15推荐的官方写法,直接在#Preview的初始参数中定义设备和方向,优先级高于视图修饰器,可靠性更强:#Preview(device: .iPhone15, interfaceOrientation: .landscapeLeft) { ContentView() }嵌套容器视图兼容旧写法
如果需要保留原有的修饰器写法,可以尝试将视图嵌套在NavigationStack或其他容器中,部分场景下能规避视图布局限制导致的方向不生效问题:#Preview { NavigationStack { ContentView() } .previewInterfaceOrientation(.landscapeLeft) }检查预览画布锁定设置
确认Xcode预览画布没有锁定方向:点击预览画布右上角的设备名称旁的箭头,取消「锁定方向」的勾选,再重新运行预览。
内容的提问来源于stack exchange,提问作者velo35
相关产品推荐
相关产品推荐

