SwiftUIプレイグラウンド
コードスニペットを書いて、実行して、共有できます - セットアップ不要。
SwiftUIをオンラインで実行し、アプリをiPhoneで見る
無料のオンラインSwiftUIプレイグラウンドです。ContentView を書くと、コードの隣にあるiPhoneサイズの画面にビューが表示されます。ボタン、トグル、テキストフィールドはタップに反応するので、@State の変化が実機と同じように見えます。Mac、Xcode、シミュレーターのダウンロードは不要です。
コードはswiftcで、Coddy独自のSwiftUI実装に対してコンパイルされます。CoddyのSwiftUIレッスンのライブプレビューを動かしているのと同じ実装です。スタック、Text、Image(systemName:)、Button、Toggle、TextField、Slider、Stepper、Picker、List、ForEach、Form、NavigationStack、シートとアラート、そして @State、@Binding、ObservableObject、@Published といった日常的なAPIに対応しています。Appleのフレームワークそのものではないため、UIKit、MapKit、Core DataなどApple専用のフレームワークは使えません。
このSwiftUIプレイグラウンドが便利な理由
- iPhoneのライブプレビュー: 画面はステータスバーとDynamic Islandのある端末フレームの中にiPhoneサイズで描かれるので、レイアウトがスマートフォン上と同じ見た目になります。
- アプリをタップできます。ボタン、トグル、ステッパー、テキストフィールドが反応し、プレビューはタップを新しい状態で再生するので、
@Stateと@Bindingが本物のアプリと同じように動きます。 - 自動プレビュー: 入力を止めて少しすると画面が再ビルドされ、更新ボタンでアプリを最初から起動し直せます。コンパイラのエラーはファイルの該当行を示します。
- エディタのSwiftUIコード補完: ドットの後のモディファイア、引数が受け取る値(
.font(.、.foregroundStyle(.)、@の後のプロパティラッパー、SF Symbolsの名前。 - スマートフォン画面のスクリーンショットをPNGで保存し、
ContentView.swiftをダウンロードして後でXcodeで開けます。Xcodeから貼り付けたファイルもビルドできます。#Previewブロックは無視されます。
SwiftUIプレイグラウンドで作れるもの
List、ForEach($items)、各行のToggleを使ったToDoリストと、新しい行を追加するTextFieldとボタン。- 設定画面: セクションに分けた
FormにPicker、Stepper、Sliderを置き、すべて@Stateにバインド。 - ナビゲーション: タイトル付きの
NavigationStackと、詳細画面を開くNavigationLinkの行。 - レイアウトの実験:
VStack、HStack、ZStackに.padding、.frame、.backgroundと角丸の図形を組み合わせ、モディファイアの重なり方を確かめる。
オンラインSwiftUIプレイグラウンドのよくある質問
MacなしでSwiftUIを実行できますか?
オンラインSwiftUIプレイグラウンドは無料ですか?
これはAppleのSwiftUIですか?
@Observableや#Previewは使えますか?
ObservableObject と @Published、@StateObject を使ってください。@Observable マクロと #Preview にはXcodeのマクロプラグインが必要です。#Preview ブロックは無視されるので、Xcodeから貼り付けたファイルもそのままビルドでき、アプリには ContentView が表示されます。独自の @main App構造体を追加することもできます。プレイグラウンドを試した後、SwiftUIはどう学べばいいですか?
@State、リスト、ナビゲーション、@Binding、監視可能なデータを短いレッスンで学べます。どのレッスンにも同じiPhoneのライブプレビューがあります。SwiftUIに役立つツール
SwiftUI プレイグラウンドと相性の良い、ブラウザベースの無料ツール - すべて Coddy の一部です。