完全に理解する Storyboard & UIKit (Day 30): 実践:1つのアプリをStoryboardとUIKitで完成させる
全30回シリーズの総決算。これまで学んだUIKit、Storyboard、Auto Layoutの知識を統合し、実戦的でモダンなiOSアプリの要件を満たす設計・開発プロセスを振り返ります。
20件の記事
全30回シリーズの総決算。これまで学んだUIKit、Storyboard、Auto Layoutの知識を統合し、実戦的でモダンなiOSアプリの要件を満たす設計・開発プロセスを振り返ります。
「アプリ内の全てのナビゲーションバーを青色にする」のような、アプリ全体に共通するUIの見た目(スタイル)を一元管理するための魔法のプロトコル「UIAppearance」の使用方法を解説します。
日付や時間の入力に特化した「UIDatePicker」と、ドラムロール(ルーレット)形式で任意の選択肢を提供する「UIPickerView」の実装方法とデザイン設定を解説します。
「本当に削除しますか?」などの重要な確認や、複数の選択肢を提示する際に使用する、iOS標準機能であるUIAlertControllerの2つのスタイル(AlertとActionSheet)の実装方法を学びます。
UISwipeGestureRecognizerやUITapGestureRecognizerなどを用いて、UIKitのViewに対する複雑なユーザーのタッチ入力(スワイプ、ピンチ、長押し等)を検知し処理する方法を学びます。
アプリのUXを飛躍的に向上させるアニメーション。サイズ変更やフェードインなどの動きを、UIViewのクラスメソッドを使って数行のコードで実装する方法を学びます。
UIViewを継承した自作コンポーネントの作り方と、@IBDesignable / @IBInspectableを用いてStoryboard上でリアルタイムに見た目とパラメータを編集する技術を解説します。
App Storeのような「横スクロールと縦スクロールが混在する複雑なUI」を少ないコードで実現する、モダンな Compositional Layout の仕組みを学びます。
写真アプリやECサイトで頻出する、要素をグリッド(格子)状に並べるための強力なコンポーネント「UICollectionView」の基本的な実装方法を解説します。
文字や画像を自由に配置したオリジナルデザインのリスト行を作るための、カスタムUITableViewCellの作成手順とAuto Layoutの設定方法を解説します。
iOSアプリ開発で最も頻繁に使用されるリスト表示UIの王様「UITableView」の概念と、データソース(DataSource)やデリゲート(Delegate)プロトコルを用いた基本的な実装手順を学びます。
画面外にはみ出す要素をスワイプで閲覧可能にするコンテナ、UIScrollViewの概念(FrameとContent Size)と、Storyboard上での鬼門であるScrollViewのAuto Layout設定方法を徹底解説します。
アプリに彩りを与えるUIImageViewの使い方から、画像の比率を保つContent Mode、そして画像素材を整理・最適化するAsset Catalog(Assets.xcassets)の運用方法までを解説します。
複数行のテキスト入力・表示を行うUITextViewの使い方と、iOS開発で避けては通れない「表示されたキーボードを閉じる処理」および「キーボードで画面が隠れる問題」の解決策を学びます。
iOSアプリのUI構築に欠かせない3つの基本コンポーネント、UILabel(テキスト表示)、UIButton(ボタン)、UITextField(テキスト入力)の主要なプロパティと使い方を解説します。
アプリ画面下部のタブで複数画面を独立して切り替えるためのコンテナ、UITabBarControllerの仕組みと設定方法を解説します。
「戻る」ボタンによる階層的な遷移(スタックナビゲーション)を提供する、iOSアプリに不可欠なUINavigationControllerの仕組みと設定方法を学びます。
Storyboardの最大の利点である視覚的な画面遷移定義「Segue(セグエ)」の使い方と、遷移先画面へのデータ渡し(prepare(for:sender:))の方法を学びます。
iOSアプリの画面を制御するコアとなるUIViewControllerの役割と、viewDidLoadなどの重要なライフサイクルメソッドについて解説します。
AppleのUI構築フレームワークであるUIKitとStoryboardの誕生から現在までの歴史、そしてSwiftUIとの役割の違いについて解説します。