美文网首页
2021-09-04

2021-09-04

作者: 脑子 | 来源:发表于2021-09-04 17:59 被阅读0次
shape.strokeBorder(lineWidth: 3)  //解决裁边的问题
LazyVGrid(columns: [GridItem(),GridItem(),GridItem()])  //设置为固定3列
ScrollView //滑动,解决超出
.aspectRatio(2/3, contentMode: .fit) //设置默认宽高比
LazyVGrid(columns: [GridItem(.adaptive(minimum: 65))]) //设置卡片最小宽度,横屏不会超大

代码备份

import SwiftUI


struct ContentView: View {
    var emojis = ["🚙", "🚗", "⛱", "🎡", "🪝", "🗿", "🛖", "⏱", "☎️", "🎰","🚜","🛴", "✈️"]
    @State var emojiCount = 4
    
    var body: some View {
        VStack {
            ScrollView {
                LazyVGrid(columns: [GridItem(.adaptive(minimum: 65))]){
                    ForEach(emojis[0..<emojiCount], id: \.self) { emoji in
                        CardView(content: emoji).aspectRatio(2/3, contentMode: .fit)
                    }
                }
            }
            .foregroundColor(.red)
            Spacer()
            HStack {
                remove
                Spacer()
                add
            }
            .font(.largeTitle)
            .padding(.horizontal)
        }
        .padding(.horizontal)
        
    }
    var remove: some View {
        Button(action:{
            if emojiCount > 1{
                emojiCount -= 1
            }
        }, label: {
            Image(systemName: "minus.circle")
        })
    }
    var add: some View {
        Button(action:{
            if emojiCount < emojis.count {
                emojiCount += 1
            }
        }, label: {
            Image(systemName: "plus.circle")
        })
    }
}

struct CardView: View {
    var content: String
    @State var isFaceUp: Bool = true
    
    var body: some View {
        ZStack {
            let shape = RoundedRectangle(cornerRadius: 20)
            if isFaceUp {
                shape.fill().foregroundColor(.white)
                shape.strokeBorder(lineWidth: 3)
                Text(content).font(.largeTitle)
                
            } else {
                shape.fill()
            }
        }
        .onTapGesture {
            isFaceUp = !isFaceUp
        }
    }
}


struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
            .preferredColorScheme(/*@START_MENU_TOKEN@*/.dark/*@END_MENU_TOKEN@*/)
        ContentView()
            .preferredColorScheme(.light)
    }
}

相关文章

  • js模拟键盘事件

    2021-09-04 虽然MDN上说charCode和keyCode已废弃,但是KeyboardEventInit...

  • 210904棕榈泉登山

    2021-09-04 到棕榈泉(Palm Spring, California)搭缆车上到高山之巅去领略高低之间,...

  • 感恩日记

    2021-09-04 坚持早起学习第2904天。 读经人员:妈妈,媛媛、小宝。 妈妈读经典内容:《黄帝内经》灵枢,...

  • 我患上了 失语症

    2021-09-04 面对这个世界 我时常有什么想说 但却始终没说什么 是懒惰 是无思 所以 我患上了失语症 这个...

  • 明月几时有 ——居家隔离生活小记

    2021-09-04 年初三就传来了封路的消息。 我们都暗自庆幸,临时决定初二那天下午买了票连夜返回了亳州,否则,...

  • 2021-09-04

    2021-09-04 才发现这几年,对于自己的教育工作,从没这么觉得失落过,因为知识的浅薄和不定的决心,让自己丢了...

  • 【云仙子】西安奥体中心一日游

    【图文·原创作者】|云仙子 2021-09-04,游览第十四届全运会主场馆~西安奥体中心“一场两馆”及周边优美环境...

  • 约练感悟

    2021-09-04中原焦点团队中19胡利娜坚持分享第49天(544) 本周第1次约练,总第17次 观察员 今天做...

  • 你有没有对爱你的人,这样说话?

    写于2021-09-04 亲爱的读者,早安! 你有没有用过最无辜的脸,说过最残忍的话? 你也许会问,这怎么可能?别...

  • #Dairy300 无题

    2021-09-04 晴 周六 中午去了趟超市,家附近常去的超市今天营业到八点就开始装修了,持续三个月。所以很多想...

网友评论

      本文标题:2021-09-04

      本文链接:https://www.haomeiwen.com/subject/zawrwltx.html