7
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?

More than 1 year has passed since last update.

Qiita全国学生対抗戦Advent Calendar 2022

Day 6

【SwiftUI】@AppStorageってまじ便利

Last updated at Posted at 2022-12-06

はじめに

iOS14から使用できる@AppStorageがまじで便利なので知らない人には知ってほしい!

@AppStorageとは?

SwiftUIの@AppStorageは、アプリの設定や状態を永続化するためのプロパティラッパーです。これを使用することで、アプリを終了したり再起動したりしても、その設定や状態を保存したままにすることができます。使用するには、プロパティを@AppStorageプロパティラッパーでラップし、そこに対してアプリ内での設定や状態を保存したい値を代入するだけです。

ChatGPTに書かせてみました笑
たぶんあってますね笑

実装

基本的な使い方

これだけで値がUserDefaultsに保存されます。
値を変えた時点でUserDefaultsに保存されます。

@AppStorage("fontSize") var fontSize: Int = 15

AppGroupで使う

このようにすることでAppExtensionでもUserDefaultsを共有することができます。

@AppStorage("fontSize", store: UserDefaults(suiteName: "com.taishin-miyamoto")) var fontSize: Int = 15

おわり

便利ですが、まだ対応していない型があるのでこれからに期待です。
個人的にはDictionary型に対応して欲しいです。

7
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
7
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?