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
View 系ライブラリに関する悩み
Search
USAMI Kosuke
March 30, 2016
Programming
0
870
View 系ライブラリに関する悩み
関西モバイルアプリ研究会 #12
http://kanmoba.connpass.com/event/28411/
USAMI Kosuke
March 30, 2016
Tweet
Share
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
580
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
140
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
300
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
450
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
710
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
640
UICollectionView Compositional Layout
usamik26
0
720
Coding Swift with Visual Studio Code and Docker
usamik26
0
480
Swift Extension for Visual Studio Code
usamik26
2
970
Other Decks in Programming
See All in Programming
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
110
技術を根付かせる / How to make technology take root
kubode
1
240
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
260
Writing documentation can be fun with plugin system
okuramasafumi
0
120
GAEログのコスト削減
mot_techtalk
0
110
WebDriver BiDiとは何なのか
yotahada3
1
140
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
1
640
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
660
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
490
AWS Lambda functions with C# 用の Dev Container Template を作ってみた件
mappie_kochi
0
240
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
170
Featured
See All Featured
Music & Morning Musume
bryan
46
6.3k
Agile that works and the tools we love
rasmusluckow
328
21k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Done Done
chrislema
182
16k
How STYLIGHT went responsive
nonsquared
98
5.3k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Making Projects Easy
brettharned
116
6k
Speed Design
sergeychernyshev
25
780
The Cult of Friendly URLs
andyhume
78
6.2k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Code Reviewing Like a Champion
maltzj
521
39k
Statistics for Hackers
jakevdp
797
220k
Transcript
View ܥϥΠϒϥϦʹ ؔ͢ΔΈ USAMI Kosuke Fenrir Inc.
ҙ » ݁ͷͳ͍Ͱ͋Δ͜ͱΛ͓அΓ͓͖ͯ͠·͢ » جຊతʹ iOS Λલఏʹ͠·͢ͷͰྃ͝ঝ͍ͩ͘͞ʢOS ґଘ͠ͳ͍ ͋Γ·͚͢Ͳʣ
ϥΠϒϥϦͷͬ͘͟Γྨ » Model ܥʢLogic ܥʣ » View ܥʢUI ܥʣ »
ʢྨͮ͠Β͍ͷ͋Δ͚Ͳɺ͜͜Ͱؾʹ͠ͳ͍ʣ
Model ܥ » DI » Data Converter (JSON / XML
/ ...) » Database » Network
View ܥ » ඪ४ͷྨࣅͷಠࣗϥΠϒϥϦ » PagerViewController ෩ / Alert ෩
/ ... » ಠࣗύʔπʢ·ͨผͷ OS ෩ύʔπʣ » HUD / Drawer / PagerTabStrip / ...
ϥΠϒϥϦͷ༻ » Model ܥੵۃతʹ͏ » View ܥ͋·ΓΘͳ͍ » ʢHUD ͳͲΑ͘͏ͷ͋Δ͚Ͳʣ
View ܥ͋·ΓΘͳ͍ʁ » ࣗલ࣮͢ΔΑΓϥΠϒϥϦΛ͍͍ͨ߹͋Δ » ͔͠͠ɺ͍ͮΒ͞Λײ͡Δ͜ͱ͕͋Δ
͍ͮΒ͞ʁ » ϥΠϒϥϦ෦ͷݟͨͷௐ͕ͮ͠Β͍ » Ͳ͕͜ΧελϜͰ͖Δ͔ϥΠϒϥϦґଘ » ݟͨͷͩ͜ΘΓ͕ͳ͍ՕॴͳΒɾɾɾ » ϥΠϒϥϦͷڍಈͱࣗલ࣮෦ͷڍಈͱ͕߹͠ͳ͍ »
Delegate Gesture Recognizer ͕িಥ͢ΔͳͲ
݁ہ » ϥΠϒϥϦͦͷ··Ͱ͑ͳ͍߹͕ଟ͍ » ͦ͜Ͱɾɾɾ » ϥΠϒϥϦͷҰ෦Λվมͯ͠͏ » ΞϓϦͰࣗલ࣮͢Δ »
ϥΠϒϥϦΛࣗ࡞͢Δ » ͔ͤͬ͘ͷϥΠϒϥϦࢿ࢈͕׆͔ͤͯͳ͍ײɾɾɾ
࠷ۙͷࣄྫ
Pull to Refresh » ͍· iOS ΞϓϦͷҰൠతͳڍಈͱ͞ΕΔ » iOS ඪ४Ͱ
UIRefreshControl ͕͋Δ
͜͜ʹগʑحົͳཁٻ͕͋Δɾɾɾ » UITableView ͷ֎ଆʹ Refresh Control Λஔ͖͍ͨΜ͚ͩͲɾɾɾ » ʢී௨ UITableView
ͷଆʹஔ͖·͢ΑͶɾɾɾʣ
UIRefreshControl » ී௨ͷ UIView ʹ addSubView ͢Δͱྫ֎͕ൃੜ͢Δ » ઃܭऀͷҙਤͱҟͳΔͨΊɺΘ͟ͱྫ֎Λग़͍ͯ͠ΔΑ͏ͩ »
UIRefreshControl UITableViewController Ͱ͏ͷ
αʔυύʔςΟϥΠϒϥϦΛ୳͢ » Refresh Control ͷϥΠϒϥϦͨ͘͞Μ͋Δ » UIViewController + UITableView /
UIScrollView Ͱ͑Δ » ͔͠͠ɾɾɾ » ͲΕ Refresh Control Λ UIScrollView ʹ addSubView ͢Δ » ϨΠΞτΛϥΠϒϥϦ෦ͰܾΊ͍ͯΔ
ϥΠϒϥϦʹ੍͞ΕΔ » View ߏΛϥΠϒϥϦʹ੍͞ΕΔ » View Λࣗͷ͖ͳΑ͏ʹஔͰ͖ͳ͍ » ϨΠΞτΛࣗͷ͖ͳΑ͏ʹઃఆͰ͖ͳ͍ »
Refresh Control Λ֎ଆʹஔ͘͜ͱϩδοΫతʹՄೳͳͣ
View ܥϥΠϒϥϦʹΉ͜ͱ » View ͷ࣮ϨΠΞτͰ͖Δ͚ͩΞϓϦʹ·͔ͤͯ΄͍͠ » ϥΠϒϥϦج൫Λఏڙͯ͠΄͍͠
ଞͷ » Refresh Control ͷϥΠϒϥϦͷଞͷࣄྫ » UIScrollViewDelegate ͷ࣮ͷதͰ hogehoge ϝιουΛݺ
» Ͱతͷ delegate UITableViewDelegate Ͱ͋Δ » ͦͷϥΠϒϥϦͷཁٻʹ͋ΘͤΔͱ delegate Λࣗ༝ʹઃܭͰ͖ͳ͍
ΞϓϦͷઃܭͷӨڹΛݮΒ͢ » ϥΠϒϥϦͷཁٻʹҾͬுΒΕͯΞϓϦͷઃܭ੍͕͞ΕΔ » ϥΠϒϥϦͷதͰղܾͯ͠Β͑Δํ͕͍͍ » ࠓճͷࣄྫͩͱɺUIScrollView ͷϓϩύςΟΛ KVO Ͱࢹ
» ʢ༨ஊ͚ͩͲ KVO Γศརʣ
ͦΜͳΘ͚Ͱ » ϥΠϒϥϦΛ͏ͷΊͯࣗલ࣮ » ͦΕΛϥΠϒϥϦԽ͍ͨ͠ » ࡞தɾɾɾ