swiftui について
Apple プラットフォーム向けのインターフェースを開発する人のための SwiftUI リファレンススキルです。レイアウト、状態管理、ナビゲーション、アニメーションなどの API を分野別にまとめています。
主な機能
- 01ビューとモディファイアのリファレンス
- 02レイアウトとナビゲーションの解説
- 03状態管理とデータフローの解説
- 04アニメーションとジェスチャー API
- 05プラットフォーム別 API 分類
活用シーン
- 01SwiftUI の画面やレイアウトの構築
- 02状態駆動型インターフェースの実装
- 03ナビゲーションとトランジションの追加
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ios-agent/ iosagent.dev --skill swiftuiインストール後、Claude Code で/swiftuiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/accessibility.mdanimations.mdapi_reference.mdapp_structure.mdcontrols.mddata_flow.mddrawing.mdessentials.mdgestures.mdindex.mdintegration.mdlayout.mdnavigation.mdplatform_specific.mdpreviews.mdstate_management.mdview_modifiers.mdviews.md詳細
SwiftUI スキル
このスキルを使用する場面
以下の場合にこのスキルを使用します:
- SwiftUI でユーザーインターフェースを構築するとき
- SwiftUI のビュー、モディファイア、レイアウトを扱うとき
- @State、@Binding、@ObservableObject を使って状態管理を実装するとき
- アニメーションやトランジションを作成するとき
- NavigationStack、NavigationLink、TabView を使ってナビゲーションを実装するとき
- データフローパターン(@Environment、@EnvironmentObject)を扱うとき
- SwiftUI コントロール(Button、TextField、Picker など)を使用するとき
- iOS、macOS、watchOS、tvOS、visionOS 向けのクロスプラットフォームアプリを構築するとき
説明
iOS、macOS、watchOS、tvOS、visionOS 向けのビュー、モディファイア、レイアウト、状態管理、アニメーション、ナビゲーション、データフロー、およびすべての SwiftUI API を網羅した、SwiftUI フレームワークの完全なドキュメントです。
クイックリファレンス
コアコンポーネント
アクセシビリティ
AccessibilityTraits
アニメーション
AnimationAnyTransitionTransition
API リファレンス
CapsuleCircleCommandsConfirmationDialogDisclosureGroupEllipseForEachFormFullScreenCoverGaugeGeometryProxyGeometryReaderGroupBoxImmersiveSpaceListMenuMenuBarExtraObservedObjectOutlineGroupPublishedRectangleRoundedRectangleSectionSecureFieldSwiftUIToolbarToolbarItemToolbarItemGroup
アプリの構造
DocumentGroupSceneSettingsWindowGroup
コントロール
ButtonDatePickerPickerSliderStepperToggle
データフロー
FocusedSceneValuePreferenceKey
描画
CanvasPath
基本項目
AppAppStorage
ジェスチャ
DigitalCrownRotationalSensitivityDragGestureLongPressGestureMagnificationGestureRotationGestureTapGesture
レイアウト
DividerGridGridRowHStackLazyHGridLazyHStackLazyVGridLazyVStackNavigationStackSpacerVStackZStack
ナビゲーション
AlertLinkNavigationLinkNavigationPathPopoverSheetTableTableColumnWKInterfaceObjectRepresentable
状態管理
BindingEnvironmentEnvironmentObjectFocusStateObservableObservableObjectSceneStorageStateStateObject
ビュー
AccessibilityLabelColorColorPickerContextMenuImageLabelNSViewControllerRepresentableNSViewRepresentablePreviewProviderProgressViewRealityViewScrollViewShapeTabViewTextTextEditorTextFieldTimelineViewUIViewControllerRepresentableUIViewRepresentableViewViewModifier
主要な概念
プラットフォームのサポート
- iOS 26.0+
- iPadOS 26.0+
- macOS 26.0+
- Mac Catalyst 26.0+
- visionOS 26.0+
デバイス上の AI
すべてのモデルはデバイス上で完全に実行されるため、プライバシーとオフラインでの利用が保証されます。
使用ガイドライン
- 使用前にモデルが利用可能か確認します
- モデルの動作に関する明確な指示を定義します
- 構造化された出力にはガイド付き生成を使用します
- 動的な機能を実現するため、ツール呼び出しを実装します
- エラーを適切に処理します
ナビゲーション
カテゴリ別に整理された詳しい API ドキュメントについては、references/ ディレクトリを参照してください:
references/accessibility.md- アクセシビリティreferences/animations.md- アニメーションreferences/api_reference.md- API リファレンスreferences/app_structure.md- アプリの構造references/controls.md- コントロールreferences/data_flow.md- データフローreferences/drawing.md- 描画references/essentials.md- 基本項目references/gestures.md- ジェスチャreferences/layout.md- レイアウトreferences/navigation.md- ナビゲーションreferences/state_management.md- 状態管理references/view_modifiers.md- ビューモディファイア(.sheet()、.frame()、.animation() など、18 個のモディファイア)references/views.md- ビュー
ベストプラクティス
- プロンプト:具体的で明確なプロンプトを作成します
- 指示:モデルの動作を事前に定義します
- 安全性:センシティブなコンテンツに対するガードレールを有効にします
- ローカライズ:ユースケースでサポートされている言語を確認します
- パフォーマンス:応答時間を短縮するには、prewarm() を使用します
- ストリーミング:リアルタイムでユーザーにフィードバックを返すには、streamResponse() を使用します
一般的なパターン
基本的なセッション
let model = SystemLanguageModel(useCase: .general)
let session = LanguageModelSession(model: model)
let response = try await session.respond(to: Prompt("Your question"))
ガイド付き生成
struct Recipe: Generable {
let title: String
let ingredients: [String]
}
let recipe = try await session.respond(
generating: Recipe.self,
prompt: Prompt("Create a pasta recipe")
)
ツール呼び出し
struct WeatherTool: Tool {
func call(arguments: String) async throws -> String {
// Fetch weather data
}
}
let session = LanguageModelSession(
model: model,
tools: [WeatherTool()]
)
リファレンスドキュメント
API の詳細については、references/ ディレクトリにあるカテゴリ別のドキュメントを参照してください。
コメント
Markdown 対応