2019 WWDC会議は、Appleが公開しフィナーレのリンクを発表建てスウィフト言語に基づいた新しいUIフレームワークを- SwiftUI。開発者は、すぐにそれをすべてを通じてアップルのプラットフォームのために美しく、ダイナミックなアプリケーションを作成することができます。
プレゼンテーション中に、クレイグ・フェデリギ、Appleのソフトウェアエンジニアリング担当上級副社長は十行程度のコードの100行を簡素化する方法を示します。
公式の紹介によると、SwiftUIは、革新的で非常に使いやすいフレームワークであり、Appleのハードウェアのすべてのユーザー・インタフェースを構築するための言語の力でスウィフトの開発者は - ただのツールとAPIのセットを使用します。
また、宣言構文スウィフトを使用してSwiftUIは、読みやすさは、書き込みを理解することは比較的容易であり、比較的高いです。シームレスに完全な同期コードや設計を可能にするだけでなく、動的型付けのための自動サポートの、ダークモード、ローカライズとアクセシビリティを提供する新しいXcodeの設計ツールでSwiftUI。
簡単SwiftUIを次に示します。
宣言構文
開発者は非常に簡単にユーザーインターフェイスが何をすべき記述することができますので、宣言構文を使用しSwiftUI。例えば、必要性は、テキストフィールドを含むアイテムのリストを作成するときに、開発者は、各フィールドの位置合わせ、フォントと色のコード記述を使用することができます。コードはまた、これまで以上に簡単読みやすいです。
この宣言型のスタイルは、アニメーションなどの複雑な要素のために理想的です。SwiftUIすることにより、開発者は簡単に事実上すべてのコントロールにアニメーションを追加することができます。
これは、新しい、より直感的なデザインツールを持っています
Xcodeの11は、開発者がSwiftUIの方法を使用してドラッグ&ドロップしてインタフェースを構築することができ、より直感的な新しいデザインツールが含まれている、我々はプロセスで直接コントロールの関連プロパティを設定することができます。
設計ツールで作業している場合、編集内容はすぐにコードに反映されます、あなたが電話にシミュレータから切り替えた場合、電話はすぐにプレビューを見ることができます。
すべてのAppleデバイス用のネイティブな経験を提供します
SwiftUIはりんご洗練されたユーザインターフェースの数十年の経験の上に構築された、真のネイティブUIフレームワークです。コードの開発者およびインタラクティブデザインの少量では、このフレームワークを使用することができるようになります。
SwiftUIサンプルコード
文のレイアウト
List(landmarks) { landmark in
HStack {
Image(landmark.thumbnail)
Text(landmark.name)
Spacer()
if landmark.isFavorite {
Image(systemName: "star.fill")
.foregroundColor(.yellow)
}
}
}
再利用可能なコンポーネントの構築
struct FeatureCard: View {
var landmark: Landmark
var body: some View {
landmark.featureImage
.resizable()
.aspectRatio(3/2, contentMode: .fit)
.overlay(TextOverlay(landmark))
}
}
アニメーションを作成する簡単な方法
VStack {
Badge()
.frame(width: 300, height: 300)
.animation(.basic())
Text(name)
.font(.title)
.animation(Animation.basic().delay(0.25))
}
SwiftUI 支持的设备要求版本较高,将在7月份开启公测,官方介绍如下:
iOS 13.0+ Beta
macOS 10.15+ Beta
UIKit for Mac 13.0+ Beta
tvOS 13.0+ Beta
watchOS 6.0+ Beta