見出し画像

プログラミングを始める。 - struct!(構造体) SwiftUI

構造体の2回目ですが、2019年、Swift周りでは大きな変化がありました。SwiftUIの登場でstructの役割ががぜん注目されています。今まではclass中心のコードでにレイアウトが組まれていましたが、SwiftUIでは、structが中心のコードを使ってのレイアウトとなっています。

基本のコードです。Playgraoundでコードを実行します。

import SwiftUI
import PlaygroundSupport

struct ContentView: View {
   var body: some View {
     Text("Hello")
   }
}

let content =  ContentView()
PlaygroundPage.current.liveView = UIHostingController(rootView: content)

ライブビューでは、

画像1

という感じに表示されます。

struct ContentView: View {
  var body: some View {
  Text("Hello")
  }
}

Viewを表示させるのは"var body: some View{}"の中身が表示部分となっています。SwiftUIの良いところは、Viewとその他の部分が切り離されているところにあります。以前の"ViewController"ではそのあたりがあやふやでした。

テキストは"Text("必要な文字")"で表示されます。そして縦方向にはVStack、横方向にはHStackという風な命令が用意されています。

これら構成されるSwiftUIのコードがstruct、構造体で構成されています。

サンプルコードです。

struct ContentView: View {
   var body: some View {
       VStack{
            Text("Hello Vertical")
            Text("Hello Vertical")
           HStack{
               Text("Hello Horizon")
               Text("Hello Horizon")
           }
       }
   }
}

とすると、

画像2

こんな感じに表示されます。

SwiftUIも新しく使えるようになり、Xcodeも大きく変わっています。

詳細は以下詳解されています。

今後はSwiftUIを中心とした開発となっていくようです。

ちなみに、SwiftUI はXcodeの他にiPadのSwift Playgroundsでも同じように動きます。この記事で書いているPlaygroundのコードと同じものをコピペしても動きます。

今はiPadでもMacでも同じように試すことができます。

いいなと思ったら応援しよう!