🍁
iOS/macOS バージョンNから使えるAPIまとめ
新規にアプリを作ったり、副業案件を受けたりする際に下限OSどこまで対応すべきかを判断するのに参考にするためのまとめ。
iOS 16.0/macOS 13.0から使えるAPI
- OSAllocatedUnfairLock
-
URL.path(percentEncoded:)
- これまでは
URL.pathだった -
URL.pathとURL.path()では仕様が少し異なるため注意(参考)
- これまでは
- Swift Charts Framework
- SwiftUI.View.presentationDetents(_:)
- SwiftUI.NavigationSplitView
- SwiftUI.NavigationStack
- SwiftUI.Table
- SwiftUI.LabeledContent
- SwiftUI.ShareLink
iOS 16.4/macOS 13.3から使えるAPI
- WebAuthenticationSession
- SwiftUI.View.presentationBackground(_:)
- SwiftUI.View.presentationCornerRadius(_:)
- SwiftUI.View.presentationCompactAdaptation(_:)
iOS 17.0/macOS 14.0から使えるAPI
- SwiftData Framework
-
Observation Framework
- SwiftUIで
@Observableマクロが使えるようになり、ObservedObjectから移行可能に
- SwiftUIで
- TipKit Framework
-
SymbolEffect
- SF Symbolでアニメーションができる
-
SwiftUI.View.onChange(of:initial:_:)
- クロージャーで
newValueとoldValueが引数に貰えるようになったやつ - 地味に
initialの制御もできるようになっている
- クロージャーで
-
SwiftUI.withAnimation(_:completionCriteria:_:completion:)
- アニメーション完了時に発火するクロージャーが指定できるようになったやつ
-
SwiftUI.View.containerRelativeFrame(_:alignment:_:)
-
GeometryReaderを使わなくても比率で幅の指定ができるぞ
-
- SwiftUI.View.safeAreaPadding(_:)
iOS 17.4/macOS 14.4から使えるAPI
iOS 18.0/macOS 15.0から使えるAPI
-
AsyncSequence<Element, Failure>
- リファレンスには書かれていないが、
Failureが使えるようになったのはiOS 18/macOS 15から
- リファレンスには書かれていないが、
- SwiftUI.Tab
- SwiftUI.View.onScrollGeometryChange(for:of:action:)
- SwiftUI.View.scrollPosition(_:anchor:)
- SwiftUI.View.presentationSizing(_:)
iOS 26.0/macOS 26.0から使えるAPI
-
Observations
-
withObservationTrackingを使わなくて良くなる
-
- SwiftUI.View.labelIconToTitleSpacing(_:)
- SwiftUI.View.dropDestination(for:isEnabled:action:)
- WebKit for SwiftUI
Discussion