バッテラ777

ゲーム開発に関する情報を共有するブログです。記事を8192書くまでやめれません

SwiftUI

【SwiftUI】Listをスクロールさせた時にバウンドさせないようにする方法

はじめに 今日はSwiftUIの勉強していきます。 Listでスクロールさせると上下で↓のようにバウンドしますよね? このバウンドをさせなくする方法について共有したいと思います。 はじめに 環境 バウンドをさせなくするには おわりに 環境 この記事の情報は次の…

【SwiftUI】ListでNaigationLinkすると選択状態になってしまう件について

はじめに 今日はSwiftUIの勉強していきます。 Listでセルをクリックしたら画面遷移するのを作りました(↓参照) 動画見てもらうとわかると思うのですが戻ってきた時にそのセルが選択状態になっています。 ※iOS15ではこの現象は発生しません これがデザイン的に…

【SwiftUI】前の画面に戻る方法 (NavigationLink、sheetで遷移)

はじめに 今日はSwiftUIの勉強していきます。 NavigationLinkやsheetを使って別画面を表示した後にコードで戻る処理を書きたいときがやってます。 今回はコードで前の画面に戻る方法について共有したいと思います。 はじめに 環境 コードで前の画面に戻る お…

【SwiftUI】何もないところを押したらキーボードを閉じさせる方法

はじめに 今日はSwiftUIの勉強していきます。 TextFieldやTextEditorのようなキーボードが表示される場合に、キーボードが表示されたままで閉じれないことがありました。 とりあえず背景部分をタップしたらキーボード閉じるという方法がわかったので共有しま…

【SwiftUI】ダークモードを回避する方法

はじめに 今日はSwiftUIの勉強していきます。 iOS13でダークモードの概念が加わりました。 iPhoneやiPad側の設定で簡単にダークモードとライトモードの切り替えができるようになっています。 開発者は各モードを対応しないといけないかというとそうではなく…

【SwiftUI】sheetによるモーダル画面遷移方法

はじめに 今日はSwitUIの勉強していきます。 アプリを作る上で欠かせないと思うのが画面遷移です。 今回はsheetという機能を使った画面遷移について共有したいと思います。 はじめに 環境 モーダルで画面遷移する コードで前の画面に戻る方法 @Environmentで…

【SwiftUI】アラートダイアログの基本的な使い方

はじめに 今日はSwiftUIの勉強していきます。 今回はアラートダイアログの基本的な使い方について共有したいと思います。 はじめに 環境 基本仕様 Alertを使う方法もあります おわりに 環境 この記事の情報は次のバージョンで動作確認しています。 * MacOS M…

【SwiftUI】スワイプメニューで削除機能を作る (レシピ)

はじめに 今日はSwiftUIの勉強していきます。 リストなどでスワイプメニューを表示して項目を削除するレシピ記事になります。 はじめに 環境 その1 (Textのみ) その2 (Imageのみ) おわりに 環境 この記事の情報は次のバージョンで動作確認しています。 * M…

【SwiftUI】@Stateの基本的な使い方 (PropertyWrapper)

はじめに 今日はSwiftUIについて勉強していきます。 SwiftUIで@がついた変数をPropertyWrapperというらしいですが、その1つに@Stateがあります。 今回は@Stateについて基本的な使い方について共有しようと思います。 はじめに 構文 イニシャライザで変数を…

【SwiftUI】Viewが再描画されているか確認する方法 (_printChanges)

はじめに 今日はSwiftUIのデバッグ方法について勉強していきます。 SwiftUIをやり始めて1ヶ月ぐらい経ったのですがViewが再描画されてるかが結構重要なことだと分かりました。 というのも、SwiftUIは手動でViewの再描画ができないため完全にシステム依存に…

【SwiftUI】Listでセル(子View)が再描画されない件について

はじめに 今日はSwiftUIを勉強していきます。 ForEachで作ったリストアイテムが変更してるのに更新されない問題が起きたので共有します。 憶測で言ってるので間違っているかもしれません。ご了承くださいませ。 はじめに 環境 症状 配列の要素追加は正常で動…

【SwiftUI】List内のアイテムの背景色を透明にする方法

はじめに 今日はSwiftUIのListについて勉強していきます。 Listは勝手に背景色ついてしまうことで大元の背景色とバッティングするケースありませんかね? 言いたいのは↓のような時です。 私はそもそもListに背景色いらないと思ってるので背景色を消す方法に…

【Swift】オリジナルのColorを作って使う方法 (Assets)

はじめに 今日はSwiftUIのColorについて勉強していきます。 SwiftUIというかXcodeではColorをリソースとして定義することができます。 今回はAssetsでColorを作るところから使うところを共有しようと思います はじめに 環境 AssetsでColorを作る Floating po…

【SwiftUI】SwiftUIだと繰り返し処理はforではなくForEachを使わないといけない

はじめに 今日はSwiftUIのプログラムについて勉強していきます。 タイトルの通りSwiftUIのbodyの実装ではforやforEachは使えないという洗礼を受けてしまったのでそこを共有していこうと思います。 はじめに 環境 ダメな例 代わりにForEachを使おう おわりに …

【SwiftUI】NavigationLinkで勝手に表示される矢印を消す方法

はじめに 今日はSwiftUIの勉強していきます。 画面遷移で使うNavagationLinkを使うと分かるのですが、勝手に矢印(→)が表示されます。 デザイン的に矢印を消したいときがあると思います。 今回は自動で表示される矢印を消す方法について共有していきます。 は…

【SwiftUI】ListだとButtonのタッチ判定がList全体になってしまう問題の対処方法

はじめに 今日はSwiftUIを勉強していきます。 議題としてはList内のアイテムにButtonを入れた場合に起きる問題についてです。 普通はButtonをタッチしたらボタンイベントが呼ばれますが、List内のButtonはどこ押しても反応するようになります。 今回はその事…

【SwiftUI】NavigationViewで変な空白ができてしまった件について

はじめに 今日はSwiftUIを勉強していきます。 画面遷移でよく使うNavigationViewを使っていて起きた問題について共有したいと思います。 はじめに 環境 現象 原因 対処 参考にしたサイト おわりに 環境 この記事の情報は次のバージョンで動作確認しています…

【SwiftUI】Listの基本的な使い方 (Viewを並べる時に使います)

はじめに 今日はSwiftUIのViewについて勉強していきます。 ListはViewを並べるためのViewです。 今回はListViewの基本的な使い方とVStackとの使い分けについて共有したいと思います。 はじめに 環境 基本構文 ヘッダーとフッターを表示 リスト内のアイテムを…

【SwiftUI】fontモディファイアの基本的な使い方

はじめに 今日はSwiftUIについて勉強していきます。 SwiftUIで文字のカスタマイズにはfontモディファイアというものを使います。 今回はfontモディファイアの基本的の使いかたと機能をピックアップして共有しようかと思います。 はじめに 環境 基本構文 固定…

【SwiftUI】Colorをカラーコード(16進数)で初期化できるように拡張する (extensionを使う)

はじめに Colorはr,g,bの値を0.0〜1.0で指定して初期化して使うわけですが、 HTMLだと#ff0000などのカラーコードを使って色を指定するやり方が多いですよね。 Webのデザインを参考する際にカラーコードしか書いていないため、Swift用にいちいち0〜1.0に変え…

【SwiftUI】ScrollViewの基本的な使い方

はじめに 今回はScrollViewの使い方についての記事です。 はじめに 環境 構文 特性 Listとの使い分け おわりに 環境 この記事の情報は次のバージョンで動作確認しています。 * MacOS Monterey (12.1) * Xcode (13.3.1) 構文 ScrollView { VStack { } } VStac…

【SwiftUI】@Bindingの基本的な使い方 (PropertyWrapper)

はじめに SwiftUIで@がついたものをPropertyWrapperというらしいですが、その1つに@Bindingがあります。 今回は@Bindingについて深ぼる記事になります。 はじめに 概要 構文 関連性 親Viewは@State、子Viewは@Binding 子Viewの定義 子View側で書き換えるの…

【SwiftUI】View全体を左寄せにする方法

はじめに デフォルトだと全体的に中央寄せになるので、左寄せにする方法を調査しました。 色々やり方があったのでそれらをまとめた記事です。 はじめに 環境 VStackを使って全体的に左に寄せる おわりに 参考にしたサイト 環境 この記事の情報は次のバージョ…

【SwiftUI】PropertyWrapperの使い方まとめ

はじめに PropertyWrapperとは以下のキーワードの事です。 @State @Binding @Published @StateObject @ObservedObject @EnvironmentObject これらはSwiftUI専用の仕組みなのですが、これを知らないと絶対にアプリを作れないので確認しておきましょう。 はじ…

【SwiftUI】NavigationViewの基本的な使い方

はじめに NavigationViewについてまとめた記事です。 StoryboardにあったNavigationControllerとは全く別物になっています。 はじめに 基本構文 モディファイアをかける場所に注意 ヘッダータイトルを表示する ヘッダーの右側にボタンを配置 ヘッダーの左側…

【SwiftUI】Colorの基本的な使い方

はじめに SwiftUIにおいてColorは一番多様するキーワードだと思うのですが、 いろいろな使い方ありそうだったのでこの記事でまとめようかと思います。 はじめに カラー定数を使うパターン デフォルト定義されているColor定数 自分でRGB値を指定したい場合 ア…

【SwiftUI】モーダルビューの作り方 (レシピ)

はじめに モーダルビューというのは画面の上に別の画面を乗せるやつです。 iOSアプリで良く見かけると思いますが、 SwiftUIでやる方法についてまとめた記事になります。 はじめに モーダルビューの作り方 モーダルビューを表示(遷移)するには モーダルビュー…

【SwiftUI】TextFieldの基本的な使い方 (テキスト入力で使うやつ)

はじめに 今日はTextFieldについて勉強していこうと思います。 TextFieldはユーザーに文字を打ち込んでもらうときに使います。 今回はTextFieldについて基本的な使い方を共有していきますねー。 はじめに 基本構文 枠線をつける方法1 枠線をつける方法2 フ…

【SwiftUI】ボタンデザインレシピ

はじめに SwiftUIはボタンデザインは自由に作れるようになります。 しかし、その自由が逆にどうしていいかわからんくなります。 今回はこんなデザインができるよというレシピ記事になります。 はじめに レシピ1 イメージ コード レシピ 2 イメージ コード …

【SwiftUI】プレビューの基本的な使い方 (シミュレータを起動せずに使える?)

はじめに UIKitだとプログラムで書いたやつはシミュレータを起動しないとどう表示されるかが分からず、いちいちシミュレーターを起動して確認していましたよね? SwiftUIはプログラムで書くタイプなんですがプレビューという機能がありまして、シミュレータ…