0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SwiftUIの@Stateについてまとめるべし

Posted at

SwiftUIの@Stateについて

まずは@Stateの要点をまとめます

@StateはSwiftUIの変数宣言に使用される
・値が更新されるたびに自動的にViewが再描画される機能を提供
・struct内で通常変更できない値を変更できるようになる
・変数にprivateをつけることで、アクセス範囲を限定しセキュリティを向上させる
・再描画が自動で行われるため、UIの更新が容易になる
@StateはそのViewとその配下のViewにのみアクセス可能
・privateをつけることは、鍵をかけるようなイメージで理解できる
@Stateを使うことで、データの変更とViewの更新が効率的に行われる

1、変数の宣言:
SwiftUIのView内で、状態を管理したい変数を宣言する際に、@State属性を付けます。また、アクセス範囲を限定するためにprivateを追加することが推奨されます。

例:

@State private var text = "Hello, world!"

2、Viewの構築:
bodyプロパティの中で、状態変数を使用してViewを構築します。状態変数が変更されると、Viewが自動的に再描画されます。

例:

var body: some View {
    VStack {
        Text(text)
            .padding()
        Button("ボタン") {
            text = "こんにちは、世界"
        }
    }
}

ここではボタンをタップするするとtextに「こんにちは」という文字列が入ります。
ユーザー操作やイベントに応じて、状態変数の値を変更します。@Stateが付与された変数は、struct内で変更可能です。値が変更されると、関連するViewが自動的に再描画されます。

この部分ですね。

Button("ボタン") {
    text = "こんにちは、世界"
}

このように、@Stateを使うことで、状態変数の値が変更されると自動的に関連するViewが再描画され、UIの更新が容易になります。また、privateを使ってアクセス範囲を制限することで、コードの安全性も向上します。

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?