SwiftUI

修飾子

項目内容
State
グローバル変数プロジェクト全体で使用可能な変数(本来は使わないことが好まれる)

UI関連

項目内容
文字表示画面に文字を表示させる初歩的なもの
TextFieldの表示入力欄を表示させる
パスワード強度の表示(基礎編)Zxcvbnでパスワード強度チェックを行う
タイルで表示するだけという感じに。
Zxcvbnでパスワード強度の表示(応用編)Zxcvbnでパスワード強度チェックを行う
ライブラリの内容からメーター形式で表示する。
TextEditorの表示複数行の入力欄を表示する
Navigationbarの表示NavigationBarを表示させる
ボタンの表示タップしたら処理を行うUIを表示させる
ラジオボタン選択肢を表示する際に使用するもの
Stepper+/ーボタンを押下したら数値を刻み幅分変更するもの
右下のボタン追加ボタンなど、画面の右下に表示するあのボタン
バー付きのTabViewページを示すバー付きのTabView
カメラロールの表示カメラロールの画像を表示する
Pickerの表示たくさんの選択肢を作成する際に使うUI
ダイアログを表示エラー発生やユーザーに確認してほしいことがある時に使うUI
Menuの表示アイコンをタップした時、Listのセルを長押しした時に表示されるあのUIを実装。
これで一つのUIにたくさんの処理を持たせることができる!
List関連
リストの表示一覧を表示させる(UITableViewのようなもの)
swipeActionsセルを左右のスワイプをさせるとボタンが表示される
CollectionViewマス目状、Grid状にUIを配置する

レイアウト関連

項目内容
繰り返し繰り返し文を表示
配置Viewの上にViewを入れたり、縦並びに配置するなど
画面端の領域取得StatusBarの高さやSafeAreaの大きさを取得
背景色背景色の設定方法。backgroundColorは使わない。
境界線UIの境界線の設定をする

処理関連

項目内容
シングルトンクラスの実装sharedを使うアレ
UIをタップ、長押しした時の処理ボタン以外のUIにタップ、長押しした時の処理を実装
アプリ起動時などを検知するアプリがバックグラウンドになったときに処理を画面単位で行いたいときなどに実装する。
画面遷移画面遷移する
表示を動的に切り替える背景色や文字列など、画面の表示をボタンタップなどにより切り替える
画面の向きの管理特定の画面のみ向きを設定するなど
タイマー処理と一時停止処理タイマー処理と一時停止、一時停止解除処理を実装する
特定の処理を若干遅らせるDispatchQueue.main.asyncAfterメソッドを使って指定した時間だけ処理を遅らせる
列挙体のループ列挙体の内容を元にループ処理を行う
項目の一覧を表示するなど
配列の連結配列のデータを文字列で連結させる。
クリップボードへのコピークリップボードへデータをコピーして、入力の手間を少しでも減らす

カメラ関連

項目内容
OSのカメラを起動するカメラを起動するときに使う。
AVCaptureを使用してカメラ起動(準備編)AVCaptureを使用してカメラ起動する。
この方法の方がカスタマイズしやすい。
AVCaptureでカメラを起動するAVCaptureを使用してカメラ起動する。
全体のコードを記載。
QRコードリーダーを実装(基礎)QRコードリーダーの実装
ただし、読み取り範囲の限定などプラスアルファの機能はなし
QRコードリーダーの読み取り範囲設定QRコードリーダーの実装
読み取り範囲を設定し、その枠を表示
QRコードリーダーの読み取ったバーコードにエフェクトをつけるQRコードリーダーの実装
読み取ったバーコードを線で囲む
どのバーコードを読み取ったかがわかる

データベース関連

項目内容
Realmの導入データベースを使用するためのライブラリを導入
そして、データの取得・登録を行う
データの削除Realmで登録したデータベースのデータ削除を行う
データの更新Realmで登録したデータベースのデータの更新を行う
データのソートRealmで登録したデータベースのデータの順番を変える

認証関連

項目内容
顔認証機能を実装する最もシンプルな認証機能の実装

音声・音源関連

項目内容
効果音を再生するmp3ファイルなど、効果音の再生を行う処理を実装する
音声入力をするスピーチの文字起こしなど、音声認識を実装する
文章を読み上げる特定の文字列を音声で読み上げる機能を実装する

サーバーとの通信処理

項目内容
Alamofireを使用してサーバーと通信するサーバーとの通信を行う上での最低限の処理を記載
Alamofireを使用してサーバーから受け取ったデータをカスタムクラスに変換カスタムクラスにjsonのデータを格納する処理を記載

課金関連

項目内容
課金の準備課金処理に必要なファイルの準備や課金商品の種類に関して
課金商品のデータ設定課金の商品のデータの設定を行う
課金のローカルテストローカル処理の実装。
実際に支払いなどはせず、表示など動作確認のみ行う
SKDemoの整理Appleから提供されている課金処理のサンプルプロジェクトに関して
実装内容を整理。

警告&エラー対処

警告一覧

項目内容
ForEachで変数を使うと出てくるNon-constant range: argument must be an integer literal

エラー一覧

項目内容
範囲を指定する際に「…」を使うとエラーが出るCannot convert value of type ‘ClosedRange<Int>’ to expected element type ‘Int’
アーカイブ作成時のエラーXcode13.4のアーカイブ作成時にエラーが発生した時の対処法