kej*_*ion 8 xcode ios swift swiftui
我试图让我的导航视图样式堆叠在 iPad 上,但在 iPhone 上默认。
代码:
.navigationViewStyle(UIDevice.current.userInterfaceIdiom == .pad ? StackNavigationViewStyle() : DefaultNavigationViewStyle())
Run Code Online (Sandbox Code Playgroud)
给我错误:
'? 中的结果值 :' 表达式具有不匹配的类型 'StackNavigationViewStyle' 和 'DefaultNavigationViewStyle'
这些不是 NavigationViewStyle 的子类吗?
我建议将它提取到简单的包装器修饰符中,并在需要的地方使用它。这里是修改器:
extension View {
public func currentDeviceNavigationViewStyle() -> AnyView {
if UIDevice.current.userInterfaceIdiom == .pad {
return AnyView(self.navigationViewStyle(StackNavigationViewStyle()))
} else {
return AnyView(self.navigationViewStyle(DefaultNavigationViewStyle()))
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1520 次 |
| 最近记录: |