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
UIStackView, Storyboard Reference, CoreSpotligh...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kishikawa Katsumi
October 01, 2015
Programming
3.5k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
UIStackView, Storyboard Reference, CoreSpotlight API - iOS 9 bootcamp
Kishikawa Katsumi
October 01, 2015
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
170
Running Swift without an OS
kishikawakatsumi
0
990
浮動小数の比較について
kishikawakatsumi
0
610
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
270
愛される翻訳の秘訣
kishikawakatsumi
3
480
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
260
Build your own WebP codec in Swift
kishikawakatsumi
2
2.7k
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
340
Other Decks in Programming
See All in Programming
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
250
Go 1.27 における memory allocation の高速化
andpad
0
340
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
510
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
160
Oxlintはいいぞ(続)
yug1224
1
470
VibeCodingからAgenticWorkflowへ
starfish719
0
920
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
My Marp Sample
sinoue0108
0
120
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.2k
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
120
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
130
「つくるAI」だけではバグは見つからない ~テストに必要な「見つけるAI」を分離させる戦略~
mfunaki
0
200
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Rails Girls Zürich Keynote
gr2m
96
14k
The Curse of the Amulet
leimatthew05
2
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Done Done
chrislema
186
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
WENDY [Excerpt]
tessaabrams
11
39k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
260
Transcript
iOS 9 Bootcamp
#cm_ios9 #eventdots
https://github.com/kishikawakatsumi/ kishikawa katsumi http://kishikawakatsumi.com/ @ Realm
Agenda • What’s new in StoryBoard & AutoLayout - UIStackView
- StoryBoard Reference • Spotlight API
What’s new in StoryBoard & AutoLayout
UIStackView
UIStackView w Ϥί·ͨλςҰྻʹෳͷαϒϏϡʔΛϨ ΠΞτͯ͘͠ΕΔϏϡʔ w εϖʔεఱʢલޙʣͷدͤΛௐՄೳ
UITableView, UICollectionView + UIStackView?
UITableView, UICollectionView + UIStackView?
UIStackView is a wrapper of AutoLayout by Apple
AutoLayout Constraints
AutoLayout Constraints
AutoLayoutͷ w ͕ࠩ֬ೝͮ͠Β͍ ίʔυϨϏϡʔͮ͠Β͍ w ଞਓ͕ϝϯςφϯεͰ͖ͳ͍ 6*ͷ͕େ͖͍ w
Ϗϡʔಉ࢜Ͱ੍͔͕͚ͭ͠ΒΕͳ͍ ϏϡʔΛআͨ࣌͠ʹ͚ସ͑Δඞཁ͕͋Δ μϛʔ7JFXͳͲ8PSLBSPVOEͷ૿Ճ
UIStackView
Refactor with UIStackView
Refactor with UIStackView
Refactor with UIStackView
Refactor with UIStackView
DEMO
AutoLayout Constraints
Start with Stack View, use constraints as needed WWDC 2015
218 Misteries of AutoLayout part 1
Wrap up w 6*4UBDL7JFX"QQMFʹΑΔ"VUP-BZPVUͷϥούʔ w "VUP-BZPVU͕γϯϓϧʹͳΔ w ϏϡʔͷIJEEFOϓϩύςΟΛࣗಈతʹରԠ 8PSLBSPVOE͕͔ͳΓݮΒͤΔʢͣʣ
w ͕ࠩ֬ೝͮ͠Β͍ɺίʔυϨϏϡʔͮ͠Β͍ͳͲ Δ w J04POMZ
References • 218 Mysteries of Auto Layout, Part 1- WWDC
2015 • UIStackView Tutorial: Introducing Stack Views - raywenderlich.com • Playing With UIStackView - swiftandpainless.com/playing-with-uistackview/ • OAStackView - github.com/oarrabi/OAStackView
StoryBoard Reference
None
None
Refactor to Storyboard
Refactor to Storyboard
Refactor to Storyboard
None
Wrap up w͍উखͦͷ··ʹ4UPSZCPBSEΛׂͰ͖Δ w 9DPEFͷαϙʔτ͋Γ w$BOEFQMPZJ04EFWJDFTXJUIMJNJUBUJPOT 9DPEFͷϦϦʔεϊʔτʹ੍ݶͷهड़͕͋Δ ੍ݶΞϦͱͷهड़͕ͩ4FHVFͳͲਖ਼͘͠ػೳ͍ͯ͠Δ Α͏ʹݟ͑Δ
Spotlight API
None
Search APIs • NSUserActivity • CoreSpotlight • Web Markup
Search APIs • NSUserActivity • CoreSpotlight • Web Markup
CSSearchableItemAttributeSet *attributeSet = [[CSSearchableItemAttributeSet alloc] initWithItemContentType:…]; attributeSet.title = program.title; attributeSet.contentDescription
= [NSString stringWithFormat:@"%@ %@\n%@", ...]; attributeSet.startDate = program.startDate; attributeSet.endDate = program.endDate; CSSearchableItem *item = [[CSSearchableItem alloc] initWithUniqueIdentifier:program.identifier domainIdentifier:@“programs" attributeSet:attributeSet]; [searchableItems addObject:item]; CSSearchableIndex *searchableIndex = [CSSearchableIndex defaultSearchableIndex]; [searchableIndex indexSearchableItems:@[searchableItem] completionHandler:...] ݕࡧΠϯσοΫεʹՃɾߋ৽
[searchableIndex deleteSearchableItemsWithIdentifiers:@[identifier] completionHandler:...]; [searchableIndex deleteSearchableItemsWithDomains:@[domain] completionHandler:...]; [searchableIndex deleteAllSearchableItemsWithCompletionHandler:...]; ݕࡧΠϯσοΫε͔Βআ
Example: Book app
None
Challenges • How to track contents changed • Can users
choose index or not per contents?
Example: TV programs app
None
Challenges • How long to keep index the contents? •
Can users remove from index?
None
Wrap up • ΞϓϦΛԣஅͯ͠ݕࡧͰ͖Δ • άϩʔόϧͳใΛݕࡧՄೳʹ͢ΔͱΑ͍ʁ • ϓϩάϥϜ͔Βݕࡧ͢ΔAPIͳ͍ʢՃɾߋ ৽ɾআͷΈʣ •
ݕࡧ݁ՌΛΩϨΠʹอ͕ͭඞཁ
Wrap up • UIStackView • StoryBoard Reference • Spotlight API