在 SwiftUI 中对形状进行分组

Posted

技术标签:

【中文标题】在 SwiftUI 中对形状进行分组【英文标题】:Grouping Shapes in SwiftUI 【发布时间】:2020-06-25 11:06:32 【问题描述】:

我在 swiftUI 中绘制了一个脸型。脸是一个圆圈,眼睛是两个圆圈。我想将这三个圆圈组合为一个单一形状,这样当我移动面部形状时,眼睛也应该随着面部移动,我也想根据相对面部圆坐标而不是绘制函数的矩形坐标系来绘制眼睛。

【问题讨论】:

你能展示你的代码吗? 【参考方案1】:

类似的东西

struct ContentView: View 
  @State var x: CGFloat = 100
  @State var y: CGFloat = 100


  var body: some View 
      VStack
          //Shape Group
          Group
              //Put your Shape here
              ZStack
                  Rectangle().fill(Color.green)
                  Circle().fill(Color.blue)
              .frame(width: 100, height: 100, alignment: .center )
          
          .position(x: self.x, y: self.y)
        
          //Slider for position
          HStack
              Text("x: \(x)")
              Slider(value: $x, in: 0...400, step: 1).padding(.horizontal, 10)
          
          HStack
              Text("y: \(y)")
              Slider(value: $y, in: 0...500, step: 1).padding(.horizontal, 10)
          
      
   

【讨论】:

以上是关于在 SwiftUI 中对形状进行分组的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SwiftUI 中对列表中的值求和?

SwiftUI:按名称分组数据并显示在展开列表中

如何在 SwiftUI 中以形状显示文本?

如何在 SwiftUI 中使用渐变填充形状

SwiftUI:按核心数据属性分组和求和

如何在 SwiftUI 中用另一个形状剪辑一个形状?