Categories
Tags
Alamofire Android AppStoreConnect AWS Bun C++ cAdvisor CFW Cloudflare Cloudflare Access Cloudflare KV Cloudflare Tunnel Cloudflare Workers D1 Deno DevContainer Discord Docker ECR ECS Edizon Emulator EmuMMC Fastlane Firestore Frida Ghidra Git GitHub GitHub Actions GitLab GPG Grafana HACGUI Heroku Homebrew Hono IDA Pro iOS IPSwitch Jailbreak Javascript JSON JWT LanPlay Linode macOS Mirakurun MongoDB NestJS NextJS Nintendo Nintendo Switch NodeJS PHP PostgreSQL Prisma Programming Prometheus Python React Realm RealmSwift Ruby Salmon Run Salmonia3+ Shogi Sideload Snap Splatoon Splatoon2 Splatoon3 SSH Stable Diffusion Starlight Swift Swift Package SwiftUI Switch TensorRT Turf War Typescript TypeScript Ubuntu Ubuntu Server VNC VPN VSCode Vue WARP Wireguard XCode Xcode yarn zsh 家電 横歩取り
373 words
2 minutes
SwiftUIでEnvironmentを使おう
EnvironmentValues
Apple のドキュメントにたくさん載っているのでこれを学んでいきましょう。
locale
現在のロケールの環境変数。
timeZone
タイムゾーンを取得する。Swift ではTimeZone.current
で取得することもできるが、環境変数を使うほうが良さそうである。
lineLimit
テキストで折返しをするかどうかの環境変数。1 だと折り返さず三点リーダで省略される。
lineSpacing
multilineTextAlignment
複数行に渡るテキストをどこで揃えるかどうか。
minimumScaleFactor
テキストにおける指定フォントサイズに対して何%まで小さくすることを認めるかの環境変数。
例えば、0.5 としておいてフォントサイズを 20 と指定すればデバイスや表示したい文字の長さによってフォントサイズを 10 まで小さくする。
sizeCategory
truncationMode
textCase
font
デフォルトのフォントを指定。
editMode
編集機能を有効化しているかどうかの環境変数
isEnabled
ユーザの操作を受け付けるかどうかの環境変数。
presentationMode
現在のビューが別のビューから呼ばれているかどうかの環境変数。
// 定義
@Environment(\.presentationMode) var present: Bool
// 現在のビューを閉じる
present.wrappedValue.dismiss()
このようにすれば画面を閉じることができる、便利。
imageScale
画像のサイズを指定できる。small
、medium
、large
の三つがあった気がするが large
でも全然大きくなくて困る。
extraLarge
みたいな Enum が欲しい、実装方法ないのかな。
SwiftUIでEnvironmentを使おう
https://fuwari.vercel.app/posts/2021/04/environment/