0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

playgroundsのみでswiftUIを学ぶ初心者にとってのPreviewProvider

Posted at

まえがき

僕は先日からiPadのplaygroundsを使ってスキマ時間にswiftUIの学習を始めたプログラミングど素人です。
勉強記録をQiitaに書き始めて、初めてMarkdown記法を知ったレベルのど素人です。
何か誤りなどありましたら、ご指摘いただけますと幸いです。

みんながコードに書き添えてるPreviewProviderって、何?

ひたすらドキュメントや先人の知恵を読みまくっている時に、ナニコレ?と思ったうちの一つがPreviewProviderでした。

struct CircleImage_Previews: PreviewProvider {
    static var previews: some View {
        CircleImage()
    }
}

そうそう、これこれ。
なんかみんな末尾に添えてるんだよな。
Xcode上でプレビューを確認する時に使うやつ…?

うーん、そんな感じで記述しておられるな。
今のところまだXcodeは触ってないからよくわからんけど、プレビュー機能もコードで呼び出してあげないといけない…って感じっぽいな。違うんかな。

playgroundsであればコードの変更内容を即時反映してプレビューで表示してくれるから、iPadのplaygrounds君をだけを使ってるうちは実用性あんまなさそう…?

もう少し掘り下げるには、playgrounds君そのもののレビュー記事とかが参考になりそう。

プレビューの項目にビンゴな内容の記載があった。

4.2からPreviewProviderを宣言したビューを含むSwiftファイルを表示していると、プレビューの上部にボタンが現れ、そのビューのプレビューを直接表示できるようになりました。表示するまでに多段階の操作のが必要なビューの確認は楽になったと言えます。

Zennの上記記事より引用

なるほど、playgrounds君でも活かせる場面はあるっぽいな。
続く一文に若干の不穏があるが…

ただ、@Binding宣言した変数やenvironmentObjectで受け渡すオブジェクトの状態が、表示するまでの操作の中で設定され、表示が変わるようなビューの場合には、想定通りに表示されない可能性があります。

まぁシンプルにそりゃそうか、って感じだ。一画面だけ抜き取ってきた場合、プレビューするための情報が足りない可能性もあるもんな。

結論 PreviewProviderとは

  • Xcodeで開発をする時に手軽にプレビュー表示させるための機能
    PreviewProviderを使わない場合はビルド&実行しないといけないっぽい(めっちゃ大変そう)
    Canvasってところに表示されるっぽい
  • iPadのplaygroundsにはそもそもライブプレビュー機能が備わってるから、iPadのplaygroundsだけで開発するならあんまり必要なさそう
  • iPadのplaygroundsでPreviewProviderがあると、通常のプレビュー画面に加えてPreviewProviderの情報を表示できるボタンが追加される
環境 PreviewProvider のメリット
通常の Swift Playgrounds ほぼ無し(即時描画機能搭載)
Xcode プロジェクト 必須(Canvas表示用)

こんなところか。以上!

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?