Ios 如何在swiftUI中创建普通视图

Ios 如何在swiftUI中创建普通视图,ios,swift,view,swiftui,ios13,Ios,Swift,View,Swiftui,Ios13,我正在尝试在SwiftUI中创建一个背景色为的普通视图。但我能找到的所有元素都不是纯视图,如文本、按钮、图像、列表等 当我尝试使用视图时,它会显示以下错误消息: 无法构造“视图”,因为它没有可访问的初始值设定项 “视图”协议只能用作一般约束,因为它具有自我或关联的类型要求 如何创建具有背景色的矩形视图?只需使用矩形() 作为缔约国: 在包含它的视图框架内对齐的矩形 下面是一个具有固定大小和背景颜色的矩形示例 Rectangle() .尺寸(CGSize(宽:10,高:10)) .foregr

我正在尝试在SwiftUI中创建一个背景色为的普通视图。但我能找到的所有元素都不是纯视图,如文本、按钮、图像、列表等

当我尝试使用
视图时,它会显示以下错误消息:

  • 无法构造“视图”,因为它没有可访问的初始值设定项
  • “视图”协议只能用作一般约束,因为它具有自我或关联的类型要求

如何创建具有背景色的矩形视图?

只需使用
矩形()

作为缔约国:

在包含它的视图框架内对齐的矩形

下面是一个具有固定大小和背景颜色的矩形示例

Rectangle()
.尺寸(CGSize(宽:10,高:10))
.foregroundColor(.red)

正如另一个答案中所建议的,您可以使用类似于
矩形()的形状
并将其设置为
大小
前底色

Rectangle()
    .size(CGSize(width: 10, height: 10))
    .foregroundColor(.blue)
但我认为直接使用
颜色
更简单:

Color.blue
    .frame(width: 10, height: 10)

以防您的用例类似于为TextField视图创建背景,下面是我如何完成我的工作的演示

这里的示例将创建一个具有不透明次要背景的小视图,然后在其顶部呈现一个标签,指示用户输入位置、另一个白色圆形矩形,以及白色矩形内的TextField()


这是另一种创建类似于ui视图的方法。在SwiftUI中,每个基本视图都像UIView一样工作

struct CustomView : View {

    var body: some View {
        ZStack{
            Color.red.frame(width: 300, height: 300)
            Text("This is view")
        }
    }
}
struct CustomView : View {

    var body: some View {
        ZStack{
            Color.red.frame(width: 300, height: 300)
            Text("This is view")
        }
    }
}