サイドバーメニューを作る方法


サイドバーは、計算されたのとMacのような大きな画面に移動するために本当に便利です.我々は、マルチプラットフォームSwiftuiアプリにサイドバーを実装する方法を見てみるつもりです.
最初にやるべきことは、新しいXcodeプロジェクトを開き、新しいSwiftUIファイルを作成することです.この例では、ファイルサイドバーの名前を付けます.サイドバーファイルの中で、我々はボイラープレートコードを以下のコードと交換しようとしています.
構造体サイドバー
VAR本体:いくつかの見解
ナビゲーション画面
リスト{
ラベル(「本」、systemimage:「本は閉じます」)
ラベル(「チュートリアル」、「systemimage :"list . bullet .長方形")
ラベル(「ビデオチュートリアル」、systemimage:「テレビ」)
ラベル("contact ", systemimage :"mail . stack ")
ラベル(「検索」)、systemimage :「マグニフィリングガラス」

. ListStyle ( sideBarListStyle () )
Navigationtitle ("code ")




上の例では、シンプルなリストビューを作成しました.その後、単に追加することによってサイドバースタイルでリストを設定します.ListStyle ( sideBarListStyle () )修飾子.我々はまた、素敵なタイトルのラベルを持つことができますし、将来的に我々のサイドバーのラベルにナビゲーションを追加するナビゲーションのビューを追加しました.
今、我々は計算されたシミュレータ上でこのコードを実行し、90度私たちのシミュレータを回転させる予定です.我々は現在、我々のサイドバーがより大きいiPadスクリーンに見える方法を見ることができます.

私たちの例の空白のスペースを埋めるためにどのようにこれは実際のアプリで見てみましょう.まずはサイドバーからNavigationViewを削除します.Swiftファイル.次に、ContentViewファイルに入り、以下のコードを追加します.
構造体のビュー
VAR本体:いくつかの見解
ナビゲーション画面
sidebar ()
リスト( 0 .. < 20 ) { } in
本文(本)

Navigationtitle (ブックリスト)



今我々は我々のアプリケーションを実行するときに我々のサイドバーの横に模擬本のリストを取得します.

我々はこのサイドバーを我々のアプリのMac版で利用できるようにしたい場合は、我々が行う必要があるすべてのプロジェクトにコードのいくつかの行を追加する必要があります.
まず最初に行う必要があるのは、NavigationViewのカーリーブレースの間のコードを抽出することです.コマンドボタンを押してリストをクリックすることでこれを行うことができます.次に下にスクロールし、サブビューを選択します.我々は、我々のsubview sidebarcontentを名前を変えます.さあ、私たちはNavigationViewの下で、Count、Chizy他、およびChunper Endifを加える必要があります.これにより、サイドバーのレイアウトが異なるオペレーティングシステムを探す方法を指定できます.
構造体サイドバー
VAR本体:いくつかの見解
ナビゲーション画面
OS ( IOS )の場合、
sidebarContent ()
Navigationtitle ("code ")

sidebarContent ()
. Frame ( Minwidth : 200 , idealWidth : 250 , MaxWidth : 300 )
センチュンエンディ



上記のコードは、私たちのアプリケーションを実行するつもりです別のOSの(オペレーティングシステム)にサイドバーコードを適応させることができます.私たちのコードを分離する必要があるので、異なるオペレーティングシステム上でコードを実行するためのさまざまな要件があります.我々のCount - if声明の最初の部分では、我々のOSがIOSであるかどうかチェックしています、そして、それが我々のサイドバーをナビゲーションタイトルでセットしているならば.我々は、我々を加える必要があります.MacOSではサポートされていません.私たちが行う必要があるすべてのMacアプリのウィンドウの最小のフレームを設定します.最後に、if文をCount - enEdifで終了します.
今、我々は両方のIOSとMacOS上で我々のサイドバーコードを実行することができます(私たちはMac OS上でこれを実行するためにMac OSにインストールされているMacOSを持っている必要があります).
それはすべてのあまりにも、マルチプラットフォームSwiftuiアプリにネイティブサイドバーを追加されます.私のGithubのサンプルコードをチェックしてください.
💻👨🏻‍💻 ハッピーコーディング!💻👨🏻‍💻