热门标签 | HotTags
当前位置:  开发笔记 > IOS > 正文

在SwiftUI中创建ViewModifier和View扩展之间的区别

如何解决《在SwiftUI中创建ViewModifier和View扩展之间的区别》经验,为你挑选了1个好方法。



1> kontiki..:

我通常更喜欢扩展,因为它们可以为您提供更具可读性的代码,并且编写起来通常更短。实际上,我目前正在撰写带有一些技巧的文章。我完成了一篇关于View扩展的文章,可在此处获得。

但是,存在差异。最后一个。使用ViewModifier,您可以使用@State变量,但不能使用View扩展名。这是一个例子:

struct ContentView: View {
    var body: some View {
        VStack {
            Text("Hello, how are you?").modifier(ColorChangeOnTap())
        }
    }
}

struct ColorChangeOnTap: ViewModifier {
    @State private var tapped: Bool = false

    func body(content: Content) -> some View {
        return content.foregroundColor(tapped ? .red : .blue).onTapGesture {
            self.tapped.toggle()
        }
    }
}


推荐阅读
author-avatar
农大军乐团_697
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有