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
910
0
Share
View 系ライブラリに関する悩み
関西モバイルアプリ研究会 #12
http://kanmoba.connpass.com/event/28411/
USAMI Kosuke
March 30, 2016
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
700
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
260
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
380
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
550
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
810
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
730
UICollectionView Compositional Layout
usamik26
0
870
Coding Swift with Visual Studio Code and Docker
usamik26
0
580
Swift Extension for Visual Studio Code
usamik26
2
1.1k
Other Decks in Programming
See All in Programming
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
360
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
550
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
130
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
120
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
初めてのRubyKaigiはこう見えた
jellyfish700
0
370
Modding RubyKaigi for Myself
yui_knk
0
830
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
180
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
0
250
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3k
iOS26時代の新規アプリ開発
yuukiw00w
0
220
ECR拡張スキャンでSBOMを収集して サプライチェーン攻撃の影響調査を 爆速で終わらせてみた
akihisaikeda
2
210
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
A Soul's Torment
seathinner
6
2.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Context Engineering - Making Every Token Count
addyosmani
9
930
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
The Language of Interfaces
destraynor
162
26k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Into the Great Unknown - MozCon
thekraken
41
2.5k
Site-Speed That Sticks
csswizardry
13
1.2k
New Earth Scene 8
popppiees
3
2.3k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
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 Γศརʣ
ͦΜͳΘ͚Ͱ » ϥΠϒϥϦΛ͏ͷΊͯࣗલ࣮ » ͦΕΛϥΠϒϥϦԽ͍ͨ͠ » ࡞தɾɾɾ