Xcode 迅捷无限渐变背景

Xcode 迅捷无限渐变背景,xcode,uiscrollview,swiftui,scrollview,linear-gradients,Xcode,Uiscrollview,Swiftui,Scrollview,Linear Gradients,我想做一个带有渐变背景的滚动应用程序。当用户滚动时-背景颜色改变。 例如,底部是黑色,顶部是白色,我将指定VStack的高度为8000,对于这个高度,当用户滚动屏幕时,他将看到颜色的变化 我没有找到任何解决办法。尝试为VStack制作LinearGradient,为其全高制作矩形图形,但它仅覆盖手机屏幕大小(无法填充所有8000个高度点)。因此,如果我向上滚动,渐变将丢失,它只显示黑色屏幕 谢谢]您可以使用ZStack中的矩形来实现这一点: struct ContentView: View {

我想做一个带有渐变背景的滚动应用程序。当用户滚动时-背景颜色改变。 例如,底部是黑色,顶部是白色,我将指定VStack的高度为8000,对于这个高度,当用户滚动屏幕时,他将看到颜色的变化

我没有找到任何解决办法。尝试为VStack制作LinearGradient,为其全高制作矩形图形,但它仅覆盖手机屏幕大小(无法填充所有8000个高度点)。因此,如果我向上滚动,渐变将丢失,它只显示黑色屏幕


谢谢]

您可以使用ZStack中的矩形来实现这一点:

struct ContentView: View {
    var body: some View {
        ScrollView {
            ZStack(alignment: .top) {
                // Example width and height. Width should be the width of the device
                Rectangle().frame(width: 10000, height: 2000).foregroundColor(.clear).background(LinearGradient(gradient: Gradient(colors: [.white, .black]), startPoint: .top, endPoint: .bottom))
                // Add your actual content here:
                Text("Yeet")
            }
        }
    }
}

这非常适合默认的滚动视图,谢谢!我忘记提了。我使用的scrollView是,我在一个问题中描述了一个bug。也许你也能帮上忙?