首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用GeometryReader绘制形状

使用GeometryReader绘制形状
EN

Stack Overflow用户
提问于 2020-04-15 08:12:42
回答 1查看 203关注 0票数 0

我可以这样做:

代码语言:javascript
复制
GeometryReader { geometry in
        Capsule()
            .foregroundColor(.yellow)
            .frame(width: geometry.size.width * 1.7)
            .offset(x: geometry.size.width * -0.1 , y: geometry.size.height * -0.9)
    }

但我需要这样的东西:

我怎样才能做到这一点呢?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-15 10:16:30

在SwiftUI停止让视图变大之前,视图似乎有一个最大宽度;胶囊/圆形形状似乎达到了这一点,这阻止了您增加绿色形状的大小。

您可以尝试自定义路径:

代码语言:javascript
复制
   struct ArcShape : Shape {
    let geometry: GeometryProxy
    func path(in rect: CGRect) -> Path {
        var p = Path()
        let center = CGPoint(x: 200, y: 100)
        p.addArc(center: center, radius:  geometry.size.width * 3, startAngle: .degrees(35), endAngle: .degrees(140), clockwise: false)
        return p
        }
    }
    struct ExampleView: View {
        var body: some View {
            NavigationView {
                GeometryReader { geometry in
        ZStack(alignment: .leading) {
            Color.white
                .edgesIgnoringSafeArea(.all)
                ArcShape(geometry: geometry)
                    .offset(x:  geometry.size.width * -0.3, y:  geometry.size.height * -1.45)
                    .foregroundColor(.green)
            VStack(alignment: .leading) {
                Section{
                    Text("Bold ").font(.system(size: 18, weight: .bold))
                        +
                        Text("light").font(.system(size: 18, weight: .light))
                }
                Section{
                    Text("Monday 27 Apr").font(.system(size: 27, weight: .light))
                }
                Spacer()
            }.padding(.horizontal)
            }
        }
        .navigationBarTitle("", displayMode: .inline)
                .navigationBarHidden(true)
        }
        }
     }

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61219293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档