美文网首页
SwiftUI No.1

SwiftUI No.1

作者: CyberDunk1997 | 来源:发表于2020-08-12 17:42 被阅读0次

    swift是一种混合了面向对象变成,函数式编程,协议式编程的语言

    1. Struct

    • swift中的struct叫做结构体,不仅可以存储变量,还能存储函数和行为
    • 声明一个结构体的“行为”为View如下所示struct ContentView : View {},View是屏幕上的一个个矩形,既可以用于绘画,也可以用于接收触控
      声明View
    • 通常我们叫一个类或者结构体中的变量为“属性”,属性的声明就上所示 var body : some View{},some View 代表了属性的类型,代表着这个View可能由很多个小的View组成。
    • 属性body的值不存储在内存上,而是被计算出来的,所以每次当有人要使用body属性时,body后花括号{}里的内容就会被执行
    • 当某个结构体被声明为View时,只需要它的body属性返回一个表现为View的东西(它可以是some View,也可以是Text,也可以是其他的)

    2. ZStack

    • ZStack是一个容器,里面可以装很多的View,Text和RoundRectangle都属于View

    • 最上面的在最底层,最下面的在最外层


      ZStack
    • 任意属于View的组件,都可以使用fill()和stroke()函数,fill()可以填充颜色,stroke()则可以给view描边

    • 如下图所示,一个ZStack容器中有三层View,

      1. 最底层是一个RoundRectangle()涂满了橘色,
      2. 中间层是一个RoundRectangle()加上了橙色边框
      3. 最上层是一个Text()
    • padding()可以让任意View有外边框,这里给ZStack加了一个外边框

    • foregroundColor可以给View设置颜色(backgroundColor则是设置背景颜色),给ZStack设置foregroundColor则是将ZStack中的每一个元素都设置为外层的颜色,而且foregroundColor可以被覆盖,所以里层的foregroundColor将覆盖外层的foregroundColor。

    ZStack

    3. 括号省略

    • 当函数的最后一个参数是闭包时,可以省略参数名称,并把大括号写在小括号外面
    • 当函数的小括号里面没有参数名称时,也可以把小括号省略
    • HStack是一个横向的容器,被装在里面的View会横向排布


      未省略
      省略后

    4. 封装

    • 将ZStack封装成CardView,以便在其他地方更简洁清楚地调用


      封装

    相关文章

      网友评论

          本文标题:SwiftUI No.1

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