Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
これからUICollectionViewを実践活用する人のためのガイド / Guide to ...
Search
USAMI Kosuke
July 12, 2023
Programming
820
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
※ Docswell に移行しました
https://www.docswell.com/s/usami-k/5W1L3X-guide-to-uicollectionview
USAMI Kosuke
July 12, 2023
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
700
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
270
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
400
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
550
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
740
UICollectionView Compositional Layout
usamik26
0
880
Coding Swift with Visual Studio Code and Docker
usamik26
0
590
Swift Extension for Visual Studio Code
usamik26
2
1.1k
ソリトンとリー代数 / soliton history
usamik26
0
990
Other Decks in Programming
See All in Programming
1B+ /day規模のログを管理する技術
broadleaf
0
130
Webフレームワークの ベンチマークについて
yusukebe
0
200
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
430
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
640
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
200
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
230
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.6k
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
160
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
240
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
8.7k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
symfony/aiとlaravel/boost
77web
0
120
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
240
Everyday Curiosity
cassininazir
0
250
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
500
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
The SEO identity crisis: Don't let AI make you average
varn
0
510
Test your architecture with Archunit
thirion
1
2.3k
Building AI with AI
inesmontani
PRO
1
1.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
First, design no harm
axbom
PRO
2
1.2k
Building Adaptive Systems
keathley
44
3.1k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
890
Transcript
これからUICollectionViewを 実践活用する人のためのガイド 宇佐見公輔 / 株式会社ゆめみ 2023-07-12 これからUICollectionViewを実践活用する人のためのガイド 1
自己紹介 宇佐見公輔(うさみこうすけ) 株式会社ゆめみ / iOSテックリード 大阪在住 iOSDC Japan 2023 パンフレット記事採択
→ 入稿済 9月に現地参加予定 これからUICollectionViewを実践活用する人のためのガイド 2
今日の内容 UICollectionViewの学びかたを整理し て話します (ポスターセッションで応募しました が、残念ながら不採択でした) これからUICollectionViewを実践活用する人のためのガイド 3
UICollectionViewとは iOS 6で登場 グリッド表示のUIコンポーネント コンテンツの配置が柔軟に行える その柔軟性ゆえに実装の難易度は高め iOS 13〜14で、モダンなAPI群が追加 された これからUICollectionViewを実践活用する人のためのガイド
4
構成要素:UITableViewの場合 Data Source Cell 画面に表示されるぶんだけのデータを取得してセルを生成する仕組み これからUICollectionViewを実践活用する人のためのガイド 5
構成要素:UICollectionView Layout Data Source Cell UITableViewに加えて、グリッド表示などのレイアウトが追加 これからUICollectionViewを実践活用する人のためのガイド 6
実装のための基本 Layout UICollectionViewLayout クラスのサブクラス Data Source UICollectionViewDataSource プロトコルの実装クラス Cell UICollectionViewCell
クラスのサブクラス これからUICollectionViewを実践活用する人のためのガイド 7
レイアウト UICollectionViewLayout クラスのサブクラス ただし、自前で実装するのは大変 標準で UICollectionViewCompositionalLayout が用意されている これでほとんどのレイアウトは実現できる(iOS 13以降) 参考:以前は
UICollectionViewFlowLayout が標準だった 現在も使えるがオススメしない これからUICollectionViewを実践活用する人のためのガイド 8
データソース UICollectionViewDataSource プロトコルの実装クラス 自前で実装するのも難しくない 標準で UICollectionViewDiffableDataSource が用意されている 差分更新の仕組みがあって高機能(iOS 13以降) ただし、使うために学ぶことが少し多い
これからUICollectionViewを実践活用する人のためのガイド 9
セル UICollectionViewCell クラスのサブクラス 自前で実装するのも難しくはない セルの登録・再利用の仕組みも知る必要がある UIContentView と UIContentConfiguration が用意されている セルの実装を安全にする(iOS
14以降) CellRegistration が用意されている セルの登録・再利用の仕組みを安全にする(iOS 14以降) これからUICollectionViewを実践活用する人のためのガイド 10
学ぶ順番:最初のステップ まずは最小限の実装でUICollectionViewを動かす 動かすために必要な要素を少ない労力で揃える これからUICollectionViewを実践活用する人のためのガイド 11
学ぶ順番:最初のステップ Layout UICollectionViewCompositionalLayout の最小限の利用 Data Source 最初は UICollectionViewDataSource プロトコルを自前実装する のがわかりやすい
Cell 最初は UICollectionViewCell のサブクラスを自前実装するのが わかりやすい これからUICollectionViewを実践活用する人のためのガイド 12
学ぶ順番:次のステップ (1) Data Source UICollectionViewDataSource プロトコルの自前実装をやめて、 UICollectionViewDiffableDataSource を使う Diffable Data
Sourceに必要な概念を学ぶ Identifiable / Hashable / Equatable スナップショット これからUICollectionViewを実践活用する人のためのガイド 13
学ぶ順番:次のステップ (2) Cell セルの登録・再利用に CellRegistration を使う セルの実装に UIContentView と UIContentConfiguration
を使う これからUICollectionViewを実践活用する人のためのガイド 14
学ぶ順番:次のステップ (3) Layout UICollectionViewCompositionalLayout をより詳しく学ぶ グループのネスト セクション、アイテムの装飾 これからUICollectionViewを実践活用する人のためのガイド 15
宣伝 UICollectionViewの本を書きました BOOTH、Zennなどで販売中 書ききれなかった内容もあるので、 続編を検討中・・・ これからUICollectionViewを実践活用する人のためのガイド 16