✨ 概要
これまでの書籍ではUI実装のアイデアや具体的な手法についてフォーカスを当てた書籍を2冊執筆してきましたが、どうしても誌面の分量の関係等もあって見送ってしまったものもありました。
本書では、Vol.1及びVol.2では惜しくも紹介ができなかったUI実装に関する実装解説を「まかない編(番外編)」として簡単でありますがまとめたものになります。また、iOS13以降で新しく登場した新機能を利用して実装したサンプルについても少しだけ触れているものもあります。
これまでの実務の中で培ってきた知識や知見に加えて、一見するととても複雑に見えそうではあれども、実装時の少しの工夫やライブラリの有効活用をすることで実現することができるUI実装に関するサンプルを3点収録しております。
✨ 収録サンプルのダウンロードについて
下記URLにこの中で解説を行なっているサンプルコードのGithubリポジトリも公開しておりますので、是非実際のコードとご一緒に活用して頂ければと思います。
https://github.com/fumiyasac/meals_ios_ui_recipe_showcase
✨ 目次
まえがき
- 動作環境及びバージョン
- サンプルに関して
- 誤表記などに関するお問い合わせに関して
第1章: メディアアプリ型のUI
- 事前準備に関して
- 本章でのサンプル実装における概要
- それぞれの画面における実装と役割について
- 一覧表示画面における無限スクロール型の表現を実装する
- 詳細表示画面における UIScrollView の性質を利用した表現を実装す
- 指の動きで閉じることができるセミモーダルビューを実装する
- コーヒーブレイク
第2章: 構造が複雑な写真表示UI
- 事前準備に関して
- 本章でのサンプル実装における概要
- それぞれの画面における実装と役割について
- 利用したライブラリの紹介
- 複雑な形のサムネイル画像の縦横比を意識したタイル状の表示画面を実装する
- 記事一覧をタブ型表示とスクロール切り替えを伴う画面を実装する
- カスタムトランジションやスクロールの変化に応じた動きをする詳細画面を実装する
- コーヒーブレイク
第3章: iOS13からの機能を使ったUI
- 事前準備に関して
- 本章でのサンプル実装における概要
- それぞれの画面における実装と役割について
- 利用したライブラリの紹介
- APIモックサーバーから表示データを取得する部分をCombineで実現する
- UICollectionViewCompositionalLayout を利用してセクション毎のレイアウトを構築する
- DiffableDataSourceを利用した差分更新を意識した表示用データを構築する
- Combine Frameworkを利用したMVVMアーキテクチャを実現する
- UITableViewについてもDiffableDataSourceを利用する
- API通信処理に関連する部分テストコードについて
- その他UICollectionViewCompositionalLayoutを利用した例
- コーヒーブレイク
あとがき