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
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
160
Running Swift without an OS
kishikawakatsumi
0
970
浮動小数の比較について
kishikawakatsumi
0
590
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
260
愛される翻訳の秘訣
kishikawakatsumi
3
470
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
250
Build your own WebP codec in Swift
kishikawakatsumi
2
2.6k
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
330
Other Decks in Programming
See All in Programming
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
600
What's New in Android 2026
veronikapj
0
250
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
450
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.6k
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
470
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.5k
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
240
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
300
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
430
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
310
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
140
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
670
Featured
See All Featured
Designing for Performance
lara
611
70k
Writing Fast Ruby
sferik
630
63k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Docker and Python
trallard
47
4.1k
Code Reviewing Like a Champion
maltzj
528
40k
GraphQLとの向き合い方2022年版
quramy
50
15k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Between Models and Reality
mayunak
4
390
From π to Pie charts
rasagy
0
260
Into the Great Unknown - MozCon
thekraken
41
2.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
210
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