SwiftUI: ViewModifier

protocol ViewModifier

应用于视图或另一个视图修改器的修改器,产生原始值的不同版本。

struct BorderedCaption: ViewModifier{
    func body(content: Content) -> some View {
        content
            .font(.caption2)
            .padding(10)
            .overlay {
                RoundedRectangle(cornerRadius: 15)
                    .stroke(lineWidth: 1)
            }
            .foregroundColor(.blue)
        
    }
}

extension View{
    func borderedCaption() -> some View {
        modifier(BorderedCaption())
    }
}

struct ContentView1: View {
    var body: some View{
        Image(systemName: "bus")
            .resizable()
            .frame(width:50, height:50)
        Text("Downtown Bus")
            .borderedCaption()
    }
}
SwiftUI-View-ViewModifier@2x.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • SwiftUI要求 iOS13.0+ 快捷键 control + option + 点击:出现属性编辑器 comm...
    余青松阅读 11,555评论 1 11
  • 在介绍Layout[https://developer.apple.com/documentation/swift...
    童星阅读 4,870评论 0 0
  • 管理您的应用程序用于驱动其界面的数据。 SwiftUI为用户界面设计提供了一种声明性方法。当您编写视图层次结构时,...
    xiaofu666阅读 3,843评论 0 0
  • 学习文章 文集:Hacking with iOS: SwiftUI Edition[https://www.jia...
    xmb阅读 10,010评论 3 14
  • SwiftUI简介 SwiftUI是wwdc2019发布的一个新的UI框架,通过声明和修改视图来布局UI和创建流畅...
    iridescentzc阅读 12,567评论 1 16