如何解决SwiftUI渐变在模拟器上渲染不正确的颜色
在模拟器上运行时,Gradient
无法正确呈现颜色。在设备上运行时,Gradient
可以正确渲染颜色。如何获得Gradient
以便在模拟器上正确渲染颜色,以便捕获准确的屏幕截图?
模拟器与设备:
示例View
与Gradient
:
struct GradientView: View {
private static let backgroundGradientColors: [Color] = [.red,.blue]
var body: some View {
ZStack {
GeometryReader { geometryReader in
let gradient: Gradient = Gradient(colors: GradientView.backgroundGradientColors)
RadialGradient(gradient: gradient,center: .bottomTrailing,startRadius: 0,endRadius: geometryReader.size.width)
.edgesIgnoringSafeArea(.all)
}
}
}
}
解决方法
如果使用内置系统颜色,这似乎会发生。一旦我改用具有浅色和深色变体的资产目录颜色,它们就会正确显示。
P.S。每次更改颜色以使其能够在小部件预览中正确显示时,我必须从sim卡中删除该应用程序。
,我也碰到了这个。显然,这似乎是Xcode / Simulator中的错误,因为设备上的所有内容看起来都是正确的。
这是在将MacBook Pro 15“连接到外部显示器时在我的MacBook Pro上发生的,但是有趣的是,当我在正常的内置显示器上运行它时,一切在SwiftUI预览中和在Simulator上都显得完全正常。
因此,如果遇到此问题并且您正在使用带有外部显示器的笔记本电脑,请尝试拔下电源插头,看看是否有帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。