SwiftUI 代码如何兼容iOS 13 和 iOS 14 (教程含源码)

实战需求

SwiftUI 代码如何兼容iOS 13 和 iOS 14 ?

本文价值与收获

看完本文后,您将能够作出下面的界面

SwiftUI 代码如何兼容iOS 13 和 iOS 14 (教程含源码)_第1张图片
SwiftUI 代码如何兼容iOS 13 和 iOS 14

看完本文您将掌握的技能

  • 掌握ViewBuilder 基础使用
  • 掌握available 基础使用

基础知识

available

应用此属性来指示声明相对于某些Swift语言版本或某些平台和操作系统版本的生命周期。

该available属性始终以两个或多个逗号分隔的属性参数的列表形式出现。这些参数以以下平台或语言名称之一开头:

iOS
iOSApplicationExtension
macOS
macOSApplicationExtension
macCatalyst
macCatalystApplicationExtension
watchOS
watchOSApplicationExtension
tvOS
tvOSApplicationExtension
swift
您还可以使用星号(*)表示声明在上面列出的所有平台名称上的可用性。available使用Swift版本号指定可用性的属性不能使用星号

使用教程

if #available(iOS 9.0, *) {
  print("iOS 9.0 and greater")

  let (contact, imageData) = PersonPopulator.generateContactInfo()
  profileImageView.image = UIImage(data: imageData)
  titleLabel.text = contact.jobTitle
  nameLabel.text = "\(contact.givenName) \(contact.familyName)"
} else {
  print("iOS 8.4")
}

ViewBuilder

一个自定义参数属性,用于从闭包构造视图。

struct ViewBuilder

总览

你可能感兴趣的:(SwiftUI 代码如何兼容iOS 13 和 iOS 14 (教程含源码))