SwiftUI - 试图在 ScrollView 中保持视图的全屏大小

SwiftUI - trying to keep the fullscreen size of a View in a ScrollView

This is the source View I would like to use in another View in a Scrollview

Scrollview is compressing the view to its TextSize

源视图:

    VStack {
        Text("Hello World")
        HStack {
            Rectangle()
                .foregroundColor(Color.blue)
            Rectangle()
                .foregroundColor(Color.green)

        }
    }

滚动视图:

    ScrollView(.horizontal) {

        HStack {

            ForEach(0 ..< 5){ item in

                worldCardView()

            }

        }
    }

定义一个变量来检索某处的设备屏幕尺寸。将它放在任何结构之外,以便可以在整个应用程序中访问它。

// Get screen dimensions for global use
let screen = UIScreen.main.bounds

然后对矩形应用框架修改器。

Rectangle()
.frame(width: screen.width * 0.5)

我在这里所做的是将矩形的宽度设置为设备屏幕尺寸的一半。根据您要达到的效果,您可能需要添加一些 .padding() 修饰符。

您的 ScrollView 中的 HStack() 是多余的,可以删除。