SwiftUIのNavigationビューは、階層的な画面遷移を実現し、スムーズなユーザーの操作を提供するための中心的となる要素です。 iOSアプリのUI設計において、情報の分類や階層化が欠かせませんが、Navigationビューを用いるこ
スマホ向けアプリ作成を趣味で始めたため、学んだことを忘れないよう備忘録として残しています。 使用言語は主に、SwiftUIで開発環境はXCodeを使用しています。
SwiftUIのNavigationビューは、階層的な画面遷移を実現し、スムーズなユーザーの操作を提供するための中心的となる要素です。 iOSアプリのUI設計において、情報の分類や階層化が欠かせませんが、Navigationビューを用いるこ
XCodeのシミュレーターにおいてロック画面を表示するには?
iOSシミュレーターでロック画面を表示する際は、以下のショートカットを使用できます。 ロック画面の表示:command + L ロックの解除:command + shift + H
TimelineProviderは、SwiftUIウィジェットで時間に基づいてコンテンツを更新するためのプロトコルです。ウィジェットが定期的に表示内容を変える必要がある場合、このプロトコルを実装します。TimelineProviderは、複
【Widget入門】TimelineEntryプロトコルとは?
TimelineEntryプロトコルは、SwiftUIのウィジェット開発で使用されるプロトコルです。 このプロトコルに準拠した構造体は、ウィジェットが表示するデータの単位(エントリ)を表します。TimelineEntryには、ウィジェットが
ウィジェットの中には、表示内容などをユーザーがカスタマイズできるウィジェットがあります。ウィジェットの設定をカスタマイズする方法を紹介します。 まずiPhoneにおけるウィジェットの追加・編集画面をみてみましょう ウィジェットカスタマイズ画
ActivityAttributesは、Live Activitiesに関連するデータを管理するためのプロトコルで、リアルタイムの情報をユーザーに提供するために使用されます。 これにより、データの構造を定義し、アプリとLive Activi
WidgetBundleとは、複数のウィジェットをまとめて提供するためのSwiftUIプロトコルです。アプリに複数のウィジェットがある場合、これらをWidgetBundleでまとめることで、ユーザーがアプリをインストールする際に、すべてのウ
検索時にツールバーが非表示ならないようにしたい【searchPresentationToolbarBehavior】
searchPresentationToolbarBehaviorは、SwiftUIで検索バーの表示動作を制御するために使用されます。 デフォルトの動作においては、検索フィールドに文字を入力する際にツールバーのコンテンツが非表示になります。
【toolbarTitleMenuの使い方】タイトルにメニューを追加する方法
toolbarTitleMenuは、ナビゲーションバーのタイトル部分にメニューを配置するためのモディファイアです。これを使用することで、タイトルをクリックするとメニューが表示されるインターフェースを簡単に作成できます。 iOS:16.0以上
toolbarColorSchemeは、ツールバーのカラースキームを設定するためのモディファイアです。これを使うことで、ナビゲーションバーやツールバーの外観をダークモードやライトモードに設定できます。 iOS:16.0以上 XCode(当サ
ツールバーの背景色のカスタマイズtoolbarBackgroundの活用方法
toolbarBackgroundは、SwiftUIでツールバーの背景色をカスタマイズするためのモディファイアです。このモディファイアを使用すると、ツールバーの見た目をカスタマイズできます。 iOS:16.0以上 XCode(当サイトの環境
toolbarRoleは、ツールバーの役割を定義するために使用されるSwiftUIのモディファイアです。このモディファイアを使うことで、ツールバーの配置や動作を指定することができます。 iOS:16.0以上 XCode(当サイトの環境):1
ツールバーのカスタマイズや再利用にToolbarContentプロトコルを活用しよう
ToolbarContentプロトコルは、SwiftUIでツールバーの内容を定義するために使用されます。 このプロトコルを実装することで、カスタムツールバーの構成や管理が容易になります。この記事では、ToolbarContentプロトコルの
ToolbarItemGroupの使い方を紹介【配置の決め方など】
ToolbarItemGroupは、ツールバー内に複数のアイテムをグループ化するためのビュー修飾子です。 これにより、ツールバーのアイテムを論理的にまとめて管理できます。ToolbarItemGroupは、ツールバーの特定の位置に複数のアイ
ScenePhaseとは?アプリのアクティブや非アクティブ、バックグラウンドなど状態を取得
ScenePhaseは、アプリのライフサイクルの変化(アクティブ、非アクティブ、バックグラウンド)を監視するために使用されます。 これにより、アプリの状態に応じて特定のアクションを実行することができます。この記事では、ScenePhaseの
SwiftUIにおけるSceneは、アプリの主要な構造を定義するためのプロトコルです。Sceneプロトコルは、アプリのウィンドウやドキュメントを管理し、それらに表示するコンテンツを提供します。 Sceneとは? Sceneは、アプリケーショ
dismissによってウインドウやプレゼンテーションを閉じるには?
dismissは、現在表示されているモーダルビューやシートをプログラム的に閉じるために使用されます。ユーザーが手動で閉じるのではなく、特定の条件やアクションによってビューを閉じる必要がある場合などにも便利です。 iOS:15.0以上 XCo
SwiftUIで使われるプロパティラッパーには、wrappedValueだけでなく、projectedValueというプロパティもあります。projectedValueは、プロパティラッパーに追加の機能や情報を提供するために使用されます。こ
DynamicPropertyを活用した動的なデータ更新の方法
SwiftUIでは、ビューがデータと連携して動的に更新されることが重要です。DynamicPropertyはそのための機能の一つです。この記事では、DynamicPropertyの概要と具体的な使用方法について説明します。 iOS:13.0
プロパティラッパーを使用する時に登場するwrappedValueについて【@Stateや@Bindingなど】
SwiftUIの@Stateや@Bindingなどのプロパティラッパーを使うときに登場するwrappedValueについて解説します。 iOS:13.0以上 XCode(当サイトの環境):15.0.1 wrappedValueとは? wra
onReceiveを使用した「タイマー処理」や「通知」、「ネットワークからデータを受信した時」のプログラミング
SwiftUIでリアクティブなコードを書く際に、onReceiveモディファイアが役立ちます。特定のパブリッシャーからデータを受信するたびにアクションを実行するために使用されます。この記事では、onReceiveの使い方を具体的な例とともに
SwiftUIのonChangeモディファイアは、指定されたプロパティの値が変わるたびにクロージャを実行する便利なツールです。 onChangeのoldValueやnewValueのパラメータを使用するとプロパティの更新によってクロージャが
onChangeは、SwiftUIで特定の状態やプロパティの変更を監視し、変更が検知されたときにアクションを実行するために使用されるモディファイアです。 iOS:17.0以上 XCode(当サイトの環境):15.0.1 基本的な使い方 以下
【findNavigator】TextEditorビューに検索インタフェースを付与する
findNavigatorは、TextEditorビューと組み合わせて使うモディファイアで、TextEditorに検索インタフェースを付与することができます。 iOS:16.0以上 XCode(当サイトの環境):15.0.1 findNav
【dismissSearch】検索フィールドを閉じる動作をプログラムで制御するには?
dismissSearchモディファイアは、検索フィールドを非アクティブにするための機能です。検索フィールドがアクティブな状態で、キーボードが表示されている場合にこのモディファイアを呼び出すと、キーボードが閉じられ、検索フィールドが非アクテ
検索フィールドのアクティブ状態を取得するには?【isSearching】
iOS:15.0以上 XCode(当サイトの環境):15.0.1 isSearchingは、SwiftUIのEnvironmentValuesの一部であり、検索フィールドがアクティブであるかどうかを示すブール値です。これを使用すると、検索フ
スコープにより検索対象となる範囲を絞って検索するフィールドの作成【searchScopes】
iOS:16.4以上 XCode(当サイトの環境):15.0.1 検索機能におけるスコープとは、検索対象となる範囲や領域のことを指します。スコープは、ユーザーが検索を行う際に検索対象を限定するために使用することができます。特定の領域に絞った
検索フィールドsearchableのカスタマイズ方法-配置箇所の変更
iOS:15.0以上 XCode(当サイトの環境):15.0.1 searchableビューモディファイアのplacementパラメータは、検索フィールドが表示される場所を指定するためのものです。このパラメータには、検索フィールドを配置する
iOS:17.0以上 XCode(当サイトの環境):15.0.1 inspectorビューはカスタマイズが可能です。カスタマイズの種類は以下が用意されています。 inspectorColumnWidth:inspectorビューの幅を設定す
iOS 17.0で導入された inspectorモディファイアの使用方法
iOS:17.0以上 XCode(当サイトの環境):15.0.1 本記事ではiOS17.0において実装されたinspectorビューについて説明します。 inspectorはiPadなど画面領域が大きいデバイスではサイドからスライドインして
iOS:17.0以上 XCode(当サイトの環境):15.0.1 「fileMover」は、SwiftUIでファイルを移動するために便利なモディファイアです。このモディファイアを使用すると、ユーザーがファイルを選択して移動先を指定し、ファイ
ファイルの保存-エクスポート機能を実装してみよう【fileExporter】
iOS:14.0以上 XCode(当サイトの環境):15.0.1 fileExporterは、SwiftUIでファイルのエクスポート機能を提供するためのモディファイアです。ユーザーがファイルを選択して保存するためのシステムのファイルエクスポ
ファイルの読み込み-インポート機能を実装してみよう【fileImporter】
iOS:14.0以上 XCode(当サイトの環境):15.0.1 fileImporterは、SwiftUIでファイルのインポート機能を提供するためのビューモディファイアです。ユーザーがデバイス上のファイルを選択し、アプリに取り込むことがで
iOS:15.0以上 XCode(当サイトの環境):15.0.1 確認ダイアログには以下のようにメッセージを表示することも可能です。 使用方法は基本的なconfirmationDialogの使用方法と同じで、messageパラメータを追加す
iOS:15.0以上 XCode(当サイトの環境):15.0.1 本記事では確認ダイアログを表示する際に、独自で準備したデータを使用する方法を紹介します。 確認ダイアログの基本的な使用方法は以下のページを参照してください。 サンプルコード
iOS:15.0以上 XCode(当サイトの環境):15.0.1 alertにLocalizedErrorに適合したエラーを表示させることが出来ます。 パラメータ isPresented:アラートを表示するかどうかを決定するブール値へのバイ
【LocalizedError】エラーの定義方法の一例を紹介
LocalizedErrorプロトコルを使用すると、カスタムエラータイプにローカライズされたエラーメッセージを簡単に提供したりすることが出来ます。 以下に、LocalizedErrorプロトコルの使い方を説明します。 エラーの定義 エラーを
sheetなどモーダルビューを表示中に背後のビューを操作可能にするには?【PresentationBackgroundInteraction】
iOS:16.4以上 XCode(当サイトの環境):15.0.1 モーダルビュー(.sheetなど)を表示している間に背後のビューを操作可能にするには、PresentationBackgroundInteractionモディファイアを使用し
sheetビューの背景色を設定する方法【presentationBackground】
iOS:16.4以上 XCode(当サイトの環境):15.0.1 SwiftUIで.sheetビューの背景を変更する方法はいくつかあります。iOS16.4以降では、.presentationBackgroundを使用するのが良いでしょう。
sheetビューの角に丸みをつけるカスタマイズ【presentationCornerRadius】
iOS:16.4以上 XCode(当サイトの環境):15.0.1 presentationCornerRadiusを使用するとsheetビューの以下部分の角に丸みをつけることが出来ます。 デフォルトのsheetビュー サンプルコード 以下の
シートビューにおけるドラッグインジケーターを非表示にする方法
.presentationDragIndicator(_:)モディファイアは、シートビューなどのプレゼンテーションビュー上部に表示されるドラッグインジケータの表示をカスタマイズするために使用されます。 特に.presentationDrag
モーダルビューのSheetの高さをカスタマイズするには?【presentationCompactAdaptation】
iOS:16.0以上 XCode(当サイトの環境):15.0.1 モーダルビューに.sheetという以下のようなビューがあります。このビューをカスタマイズする方法を紹介します。 sheetの高さを設定する方法 sheetの高さを2段階に設定
全画面表示されるモーダルビュー fullScreenCoverの使い方
iOS:14.0以上 XCode(当サイトの環境):15.0.1 fullScreenCoverは、全画面モーダルビューを表示するためのビューモディファイアです。fullScreenCoverには2つの宣言方法があります。 fullScre
【モーダルビューの表示方法】シート(.sheet)の使い方について
SwiftUIの".sheet"を使用すると、条件に応じてモーダルビューを表示できす。宣言には2つの方法があります。 sheet(isPresented:onDismiss:content:):Bool値をバインディング
タイトル表示モードの切り替え ナビゲーションバータイトルのカスタマイズ
iOS:14.0以上 XCode(当サイトの環境):15.0.1 SwiftUIで.navigationBarTitleDisplayMode(_:)を使用すると、ナビゲーションバーのタイトル表示モードをカスタマイズできます。 このモディフ
本記事ではナビゲーションバーに表示される戻るボタンを非表示にする方法をご紹介します。 SwiftUIの.navigationBarBackButtonHidden(_:)ビューモディファイアをビューに適用し、引数としてtrueを渡すことで、
NavigationDestinationの種類とその使い方について
SwiftUIのnavigationDestination(for:destination:)モディファイアは、NavigationStackやNavigationSplitViewと組み合わせて使用されます。 iOS:16.0以上 XCo
複数階層のビューにおいて一気にルートビューへ戻る方法【NavigationPathの活用】
NavigationPathはSwiftUIで導入されたクラスで、ナビゲーションスタック内のパスを表します。これにより、プログラマティックにナビゲーションスタックを管理することが可能になります。NavigationPathは特にNaviga
【ツールバーのカスタマイズ】ツールバー背景やタイトルフォントの変更など
この記事ではツールバーのカスタマイズについて紹介します。背景の変更やタイトルのフォントの変更が可能です。 ツールバー背景色の変更(toolbarBackground) iOS:16.0以上 XCode(当サイトの環境):15.0.1 Swi
iOS:15.0以上 XCode(当サイトの環境):15.0.1 alertには以下のようなメッセージを表示することも可能です。 使用方法は基本的なalertの使用方法と同じで、messageパラメータを追加するだけです。 パラメータ ti
NavigationSplitViewは、SwiftUI 3.0で導入されたコンポーネントで、iPadOSやmacOSなどの大きな画面で使われる2カラム(サイドバーとディテールビュー)または3カラム(サイドバー、コンテンツビュー、ディテール
NavigationSplitViewにおけるツールバーボタンのカスタマイズ
iOS:16.0以上 XCode(当サイトの環境):15.0.1 本記事ではNavigationSplitViewにおけるツールバーボタンを削除したりカスタマイズする方法を紹介します。 カスタマイズするには.toolbar(removing
NavigationSplitViewにおいて各カラムの幅を指定するには?
iOS:16.0以上 XCode(当サイトの環境):15.0.1 .navigationSplitViewColumnWidth は SwiftUI の NavigationSplitView に関連するビューモディファイアで、特定のカラム
NavigationSplitViewにおいて初期表示するビューを変更するには?
iOS:17.0以上 XCode(当サイトの環境):15.0.1 NavigationSplitViewにおいて、初期表示するビューを指定することが可能です。preferredCompactColumnを使用することで、複数カラム(サイドバ
iOS:16.0以上 XCode(当サイトの環境):15.0.1 .navigationSplitViewStyleを使用するとNavigationSplitView のスタイルを変更することが出来ます。スタイルを適用するとサイドバーを展開
カラム(サイドバー、コンテンツビュー、ディテールビュー)の表示状態を切り替える方法は?
NavigationSplitViewVisibilityは、NavigationSplitViewのカラム(サイドバー、コンテンツビュー、ディテールビュー)の表示状態を制御するためにSwiftUIで使用される列挙型です。この列挙型は、特定
SwiftUIでは、Previewを使用してビューのデザインや挙動をリアルタイムに確認することができます。この記事では、SwiftUI Previewの基本的な概念と使用法に焦点を当て、効率的なUI開発に役立つTipsを紹介します。 iOS
タスクと非同期処理の基本的な使用方法(task sleep)
iOS:15.0以上 XCode(当サイトの環境):15.0.1 SwiftUIでのtask修飾子は、ビューが表示されるときに非同期操作を開始するために使用されます。taskは、ビューのライフサイクルイベントに基づいて非同期コードを実行する
この記事では、SwiftUIでのToolbarItemの使い方を初学者向けに解説します。ToolbarItemを使うことで、アプリにツールバーを追加し、さまざまなアクションやビューをナビゲーションバーに組み込むことができます。 iOS:14
SwiftUIでは、カスタムViewを作成してアプリケーションの特定の要件に合わせたUIを構築することができます。この記事では、SwiftUIでカスタムViewを宣言する手順を解説します。 カスタムViewの基本 SwiftUIでカスタムV
SwiftUIでは、enum(列挙型)を使用することで、関連する値をグループ化することができます。enumは、限定された選択肢の中から1つを選ぶ際に特に有効です。SwiftUIのビューやロジックの中で、特定の状態やカテゴリーを表すのにenu
SwiftUIのデータフローとバインディング:基本から応用まで
この記事では、SwiftUIにおけるデータフローの理解とバインディングの活用方法について、基本から応用まで詳しく解説します。 SwiftUIのデータフロー SwiftUIのデータフローは、アプリケーションの状態とUIの間の相互作用を管理する
VisualStudioでDjangoプロジェクトを作成する
本記事ではVisualStudioを使用してDjangoプロジェクトを作成する手順を解説します。 プロジェクトの新規作成 VisualStudioにおいて『新しいプロジェクトの作成』を実行すると以下の画面が表示されます。 プロジェクトのテン
Macでのスクリーンショット撮影は、画面上の情報を素早く保存したり、他者と共有したりする際に非常に便利です。幸い、macOSには画面の特定部分や全体をキャプチャするためのシンプルなショートカットが用意されています。このブログでは、Macでス
SwiftUIにおけるdidSetを使用したプロパティの値をチェックする方法
iOS17.0以上XCode(当サイトの環境)15.0.1 SwiftUIにおいてプロパティの値をチェックする際には、いくつか方法があります。ここではdidSetを使用した方法を紹介します。プロパティが変更されたときにその変更を監視し、必要
【登録フォームなどへの活用】特定条件によるビューの有効/無効切り替え【disabledモディファイアの使い方】
SwiftUIで.disabled(_:)モディファイアは、特定の条件下でビュー(主にボタンやフォームフィールドなどのインタラクティブな要素)の有効/無効状態を制御するために使用されます。 このモディファイアを使用すると、ユーザーのアクショ
アニメーションは、ユーザー体験を向上させるための重要な要素です。SwiftUIでは、状態変化に応じたアニメーションを簡単に追加することができます。 iOS:13.0以上 XCode(当サイトの環境):15.0.1 アニメーションの基本 以下
Xcodeをインストールする方法は主に2つあります。一つはMac App Storeを利用する方法、もう一つはAppleの開発者サイトから直接ダウンロードする方法です。以下に、それぞれの手順を説明します。 Mac App Storeを利用す
Apple Developerアカウントを作成することで、Appleの開発者向けリソースにアクセスし、iOS、macOS、watchOS、tvOS向けのアプリを開発および配布することが可能になります。 以下に、Apple Developer
SwiftUIの歴史と進化:AppleのUIフレームワークの新時代
この記事では、Appleが開発者コミュニティに提供しているUIフレームワーク、SwiftUIの歴史とその進化についてまとめています。SwiftUIは、短期間で大きな進歩を遂げ、Appleのプラットフォーム向けアプリ開発の未来を形作っています
SwiftUIが提供する豊富なレイアウト機能の中でも、スペーシングとアライメントはUIデザインの基礎を形成します。これらのツールを適切に活用することで、アプリのインターフェースはより直感的で美しく、使いやすくなります。このブログでは、Swi
この記事では、Appleが提供する革新的なフレームワーク、SwiftUIについて紹介します。SwiftUIは、iOS、macOS、watchOS、tvOSアプリケーションの開発をより簡単かつ効率的にすることを目的としています。 SwiftU
SwiftUIは、Appleの最新UIフレームワークであり、iOS、macOS、watchOS、tvOSのアプリ開発を根本から変えています。この記事では、SwiftUIの主要な利点と、開発者が直面する可能性のある制限について掘り下げます。
ポップアップメニューのようにボタンタップにより表示されるメニューを作成する【Menuビュー】
このブログでは、SwiftUIを使用してメニュービューを効果的に実装する方法について詳しく解説します。メニュービューは、ユーザーがアプリ内の複数のオプションを簡単に選択できるようにするためのUIコンポーネントです。 iOS:14.0以上 X
SwiftUIでは、Spacerを利用して柔軟なレイアウトを構築することができます。この記事では、Spacerの基本的な使い方から実用的な応用までを詳しく解説します。 基本的な使い方 水平方向への活用 Spacerを使って要素間のスペースを
SwiftUIでは、オプショナル型は非常に重要です。オプショナル型は値が存在するかどうかを表し、値が存在しない可能性があることを示します。ここでは、SwiftUIにおけるオプショナル型の活用方法について解説します。 オプショナル型とは? /
この記事では、MenuとPickerを組み合わせて使用する方法を解説します。MenuとPickerの組み合わせは、ユーザーに選択肢を提供しつつ、限られたディスプレイ上でユーザーインターフェースをいかに効率的に配置するか有効に活用するのに役立
SwiftUIのZStackは、ビューを重ねて配置することで、奥行きや視覚的な重なりを持たせることができるレイアウトコンポーネントです。この記事では、ZStackの基本的な使い方から実践的な応用例までを詳しく解説します。 1. 基本的な使い
SwiftUIでは、画像を表示するための便利なコンポーネントが提供されています。ここでは、画像を表示するための基本的な手法とそのカスタマイズ方法について解説します。 使用する画像のプロジェクトへの取り込み サイドメニューから「Assets」
HStackとVStackはSwiftUIでUIをレイアウトするための重要なコンポーネントです。この記事では、HStackとVStackの使い方や役割について詳しく解説します。 HStackとVStackの基本 HStackとVStackの
.aspectRatio()は、SwiftUIで画像やビューのアスペクト比を設定するための便利なモディファイアです。このモディファイアを使用すると、ビューが異なるデバイスサイズや環境に合わせて正しい比率で表示されるように調整することができま
はじめに SwiftUIのContextMenuは、ユーザーがViewを長押ししたときに表示されるメニューです。この記事では、その基本的な使い方と実装方法について解説します。 ContextMenuの基本 ContextMenuは、特定のV
Textビューを使用する際に、テキストのフォントサイズを変更することは非常に簡単です。SwiftUIでは、さまざまなフォントサイズのオプションが用意されています。 デフォルトのフォントサイズ import SwiftUI struct Fo
SwiftUIでエントリーポイント(起動)となるプログラムを作成する方法
この記事ではSwiftUIにおいて、エントリーポイントとなるプログラムの作成方法について説明します。 エントリーポイントとは何か? エントリーポイントは、アプリケーションが起動するときに最初に実行される部分のことを指します。SwiftUIで
本記事ではSwiftUIでの画面遷移方法について説明します。SwiftUIでは、以下の3つの基本的な画面遷移方法があります。 NavigationLink sheet フラグによるViewの切り替え 画面遷移方法の違い Navigation
iOSアプリにおけるPopOver(ポップアップテキスト)の表示方法
この記事では、SwiftUIでPopoverを使用する方法について解説します。 iOS:13.0以上 XCode(当サイトの環境):15.0.1 Popoverは、ビュー上にコンテンツを小さなフローティングパネルとして表示するために使用され
iOSアプリにおけるPopOver(ポップアップテキスト)の表示方法
この記事では、SwiftUIでPopoverを使用する方法について解説します。 iOS:13.0以上 XCode(当サイトの環境):15.0.1 Popoverは、ビュー上にコンテンツを小さなフローティングパネルとして表示するために使用され
iOSアプリにおけるPopOver(ポップアップテキスト)の表示方法
この記事では、SwiftUIでPopoverを使用する方法について解説します。 Popoverとは Popoverは、ユーザーがアクションを実行したときに表示される小さなウィンドウです。主に追加情報を表示したり、ユーザーに選択肢を提示したり
SwiftUIにおいてViewを画面下部のボタンで切り替える方法(TabView)
SwiftUIにおいて、画面下部などにボタンを配置し対応するボタンにより異なる画面を切り替えるためによく使われるのがTabViewです。 TabViewを使うことで、タブバーのあるアプリを簡単に作成できます。 import SwiftUI
SwiftUIにおいて複数行のテキストを入力するには?【TextField/TextEditor】
SwiftUIにおいて、複数行のテキストを入力するには、次の方法があります。iOSバージョンにより使用可能な方法が異なります。iOS16以降iOS16以降では、TextFieldにおけるイニシャライザのaxisパラメータを指定することで、テ
SwiftUIにおいてForEach を使って配列を逆順で繰り返す方法
ForEachは配列や数値の範囲などのコレクションを反復処理して、Viewを生成できます。ForEachの第1引数には、コレクションを指定しますが、ここでreversedメソッドを使うと、コレクションの要素を逆順にすることができます。rev
【SwiftUI】繰り返し処理(ForEachなど)において間隔を指定する方法
ForEachを使用して処理を繰り返す際に、間隔を1つ飛ばして処理を行いたい時などに便利です。いくつか方法はありますが、ForEach中でStride関数を使用した例を紹介します。importSwiftUIstructStepRepeat:
SwiftUIで画面下に表示されるダイアログの作り方「confirmationDialog」とは?
confirmationDialogはアクションを実行する前に確認ダイアログを表示するのに役立つ重要なコンポーネントです。ユーザーが重要な操作を行う前に確認を求める際に非常に役立ちます。confirmationDialogのシンプルな使い方
LocalizedStringKeyで一部の文字列をローカライズしたい場合(ワイルドカード)
Localizable.stringにおいて、ワイルドカード「%@」を使うことができます。%@を使うことで、一部の文字列をローカライズしたい場合に対応することができます。使い方まずローカライズしたい文字列の内、動的に変化する可能性がある部分
DatePickerは、SwiftUIで日付や時間の選択を簡単に実現するためのコンポーネントです。以下は、DatePickerの基本的な使い方を紹介します。importSwiftUIstructDateSample:View{//Date(
Type ‘xxx’ does not conform to protocol ‘ViewModifier’の対処法について
表題の通りエラーが発生した場合、説明から考えると、「ViewModifier」プロトコルに準拠していないという意味ですが、それ以外にも関数名やVIewの名称が重複している場合にも発生します。例えば以下のようなコードを作成しようとしたとして、
UnityHubにおいて日本語へ設定変更する方法を紹介します。UnityHubを起動した時の以下の画面から「歯車」のマーク(環境設定ボタン)をクリックします。環境設定を開いたら、「Appearance」>「Language」の項目から
Macを使っている時ChatGPTで文章を書く際に変換を確定するために改行キーを押すと送信されてしまう場合
表題の通りMacを使ってChatGPTで文章を打つとEnterキーで文章が送信されて不便でした。その場合は「Shiftキー⇧」+「Enterキー↩️」を押すと、文章を送信せずに変換を確定したり、改行したりできて便利です。
【SwiftUI】変数や引数で渡された文字列だとLocalizableで設定した言語に置き換わらない
Localizable.stringで多言語対応した際、変数や引数に格納してしまうと各言語に置き換わらないことがあったため、対応方法を紹介します。以下のプログラムのようにLocalizable.stringで設定してある文字列でも、変数に格
SwiftUIにおいて多言語に対応したい場合、ローカライズを使うと便利です。設定手順ローカライズは以下の手順で行うことができます。1.Infoタブを開くProject設定から「Info」タブを選択してくださいLocalizations の項
「ブログリーダー」を活用して、SEカトウさんをフォローしませんか?
SwiftUIのNavigationビューは、階層的な画面遷移を実現し、スムーズなユーザーの操作を提供するための中心的となる要素です。 iOSアプリのUI設計において、情報の分類や階層化が欠かせませんが、Navigationビューを用いるこ
iOSシミュレーターでロック画面を表示する際は、以下のショートカットを使用できます。 ロック画面の表示:command + L ロックの解除:command + shift + H
TimelineProviderは、SwiftUIウィジェットで時間に基づいてコンテンツを更新するためのプロトコルです。ウィジェットが定期的に表示内容を変える必要がある場合、このプロトコルを実装します。TimelineProviderは、複
TimelineEntryプロトコルは、SwiftUIのウィジェット開発で使用されるプロトコルです。 このプロトコルに準拠した構造体は、ウィジェットが表示するデータの単位(エントリ)を表します。TimelineEntryには、ウィジェットが
ウィジェットの中には、表示内容などをユーザーがカスタマイズできるウィジェットがあります。ウィジェットの設定をカスタマイズする方法を紹介します。 まずiPhoneにおけるウィジェットの追加・編集画面をみてみましょう ウィジェットカスタマイズ画
ActivityAttributesは、Live Activitiesに関連するデータを管理するためのプロトコルで、リアルタイムの情報をユーザーに提供するために使用されます。 これにより、データの構造を定義し、アプリとLive Activi
WidgetBundleとは、複数のウィジェットをまとめて提供するためのSwiftUIプロトコルです。アプリに複数のウィジェットがある場合、これらをWidgetBundleでまとめることで、ユーザーがアプリをインストールする際に、すべてのウ
searchPresentationToolbarBehaviorは、SwiftUIで検索バーの表示動作を制御するために使用されます。 デフォルトの動作においては、検索フィールドに文字を入力する際にツールバーのコンテンツが非表示になります。
toolbarTitleMenuは、ナビゲーションバーのタイトル部分にメニューを配置するためのモディファイアです。これを使用することで、タイトルをクリックするとメニューが表示されるインターフェースを簡単に作成できます。 iOS:16.0以上
toolbarColorSchemeは、ツールバーのカラースキームを設定するためのモディファイアです。これを使うことで、ナビゲーションバーやツールバーの外観をダークモードやライトモードに設定できます。 iOS:16.0以上 XCode(当サ
toolbarBackgroundは、SwiftUIでツールバーの背景色をカスタマイズするためのモディファイアです。このモディファイアを使用すると、ツールバーの見た目をカスタマイズできます。 iOS:16.0以上 XCode(当サイトの環境
toolbarRoleは、ツールバーの役割を定義するために使用されるSwiftUIのモディファイアです。このモディファイアを使うことで、ツールバーの配置や動作を指定することができます。 iOS:16.0以上 XCode(当サイトの環境):1
ToolbarContentプロトコルは、SwiftUIでツールバーの内容を定義するために使用されます。 このプロトコルを実装することで、カスタムツールバーの構成や管理が容易になります。この記事では、ToolbarContentプロトコルの
ToolbarItemGroupは、ツールバー内に複数のアイテムをグループ化するためのビュー修飾子です。 これにより、ツールバーのアイテムを論理的にまとめて管理できます。ToolbarItemGroupは、ツールバーの特定の位置に複数のアイ
ScenePhaseは、アプリのライフサイクルの変化(アクティブ、非アクティブ、バックグラウンド)を監視するために使用されます。 これにより、アプリの状態に応じて特定のアクションを実行することができます。この記事では、ScenePhaseの
SwiftUIにおけるSceneは、アプリの主要な構造を定義するためのプロトコルです。Sceneプロトコルは、アプリのウィンドウやドキュメントを管理し、それらに表示するコンテンツを提供します。 Sceneとは? Sceneは、アプリケーショ
dismissは、現在表示されているモーダルビューやシートをプログラム的に閉じるために使用されます。ユーザーが手動で閉じるのではなく、特定の条件やアクションによってビューを閉じる必要がある場合などにも便利です。 iOS:15.0以上 XCo
SwiftUIで使われるプロパティラッパーには、wrappedValueだけでなく、projectedValueというプロパティもあります。projectedValueは、プロパティラッパーに追加の機能や情報を提供するために使用されます。こ
SwiftUIでは、ビューがデータと連携して動的に更新されることが重要です。DynamicPropertyはそのための機能の一つです。この記事では、DynamicPropertyの概要と具体的な使用方法について説明します。 iOS:13.0
SwiftUIの@Stateや@Bindingなどのプロパティラッパーを使うときに登場するwrappedValueについて解説します。 iOS:13.0以上 XCode(当サイトの環境):15.0.1 wrappedValueとは? wra
iOS:16.0以上 XCode(当サイトの環境):15.0.1 モーダルビューに.sheetという以下のようなビューがあります。このビューをカスタマイズする方法を紹介します。 sheetの高さを設定する方法 sheetの高さを2段階に設定
iOS:14.0以上 XCode(当サイトの環境):15.0.1 fullScreenCoverは、全画面モーダルビューを表示するためのビューモディファイアです。fullScreenCoverには2つの宣言方法があります。 fullScre
SwiftUIの".sheet"を使用すると、条件に応じてモーダルビューを表示できす。宣言には2つの方法があります。 sheet(isPresented:onDismiss:content:):Bool値をバインディング
iOS:14.0以上 XCode(当サイトの環境):15.0.1 SwiftUIで.navigationBarTitleDisplayMode(_:)を使用すると、ナビゲーションバーのタイトル表示モードをカスタマイズできます。 このモディフ
本記事ではナビゲーションバーに表示される戻るボタンを非表示にする方法をご紹介します。 SwiftUIの.navigationBarBackButtonHidden(_:)ビューモディファイアをビューに適用し、引数としてtrueを渡すことで、
SwiftUIのnavigationDestination(for:destination:)モディファイアは、NavigationStackやNavigationSplitViewと組み合わせて使用されます。 iOS:16.0以上 XCo
NavigationPathはSwiftUIで導入されたクラスで、ナビゲーションスタック内のパスを表します。これにより、プログラマティックにナビゲーションスタックを管理することが可能になります。NavigationPathは特にNaviga
この記事ではツールバーのカスタマイズについて紹介します。背景の変更やタイトルのフォントの変更が可能です。 ツールバー背景色の変更(toolbarBackground) iOS:16.0以上 XCode(当サイトの環境):15.0.1 Swi
iOS:15.0以上 XCode(当サイトの環境):15.0.1 alertには以下のようなメッセージを表示することも可能です。 使用方法は基本的なalertの使用方法と同じで、messageパラメータを追加するだけです。 パラメータ ti
NavigationSplitViewは、SwiftUI 3.0で導入されたコンポーネントで、iPadOSやmacOSなどの大きな画面で使われる2カラム(サイドバーとディテールビュー)または3カラム(サイドバー、コンテンツビュー、ディテール
iOS:16.0以上 XCode(当サイトの環境):15.0.1 本記事ではNavigationSplitViewにおけるツールバーボタンを削除したりカスタマイズする方法を紹介します。 カスタマイズするには.toolbar(removing
iOS:16.0以上 XCode(当サイトの環境):15.0.1 .navigationSplitViewColumnWidth は SwiftUI の NavigationSplitView に関連するビューモディファイアで、特定のカラム
iOS:17.0以上 XCode(当サイトの環境):15.0.1 NavigationSplitViewにおいて、初期表示するビューを指定することが可能です。preferredCompactColumnを使用することで、複数カラム(サイドバ
iOS:16.0以上 XCode(当サイトの環境):15.0.1 .navigationSplitViewStyleを使用するとNavigationSplitView のスタイルを変更することが出来ます。スタイルを適用するとサイドバーを展開
NavigationSplitViewVisibilityは、NavigationSplitViewのカラム(サイドバー、コンテンツビュー、ディテールビュー)の表示状態を制御するためにSwiftUIで使用される列挙型です。この列挙型は、特定
SwiftUIでは、Previewを使用してビューのデザインや挙動をリアルタイムに確認することができます。この記事では、SwiftUI Previewの基本的な概念と使用法に焦点を当て、効率的なUI開発に役立つTipsを紹介します。 iOS
iOS:15.0以上 XCode(当サイトの環境):15.0.1 SwiftUIでのtask修飾子は、ビューが表示されるときに非同期操作を開始するために使用されます。taskは、ビューのライフサイクルイベントに基づいて非同期コードを実行する
この記事では、SwiftUIでのToolbarItemの使い方を初学者向けに解説します。ToolbarItemを使うことで、アプリにツールバーを追加し、さまざまなアクションやビューをナビゲーションバーに組み込むことができます。 iOS:14
SwiftUIでは、カスタムViewを作成してアプリケーションの特定の要件に合わせたUIを構築することができます。この記事では、SwiftUIでカスタムViewを宣言する手順を解説します。 カスタムViewの基本 SwiftUIでカスタムV
SwiftUIでは、enum(列挙型)を使用することで、関連する値をグループ化することができます。enumは、限定された選択肢の中から1つを選ぶ際に特に有効です。SwiftUIのビューやロジックの中で、特定の状態やカテゴリーを表すのにenu