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
Storyboardいいよ
Search
Ryota Hayashi
June 23, 2017
Technology
1
2.2k
Storyboardいいよ
Storyboardについて話しました
Ryota Hayashi
June 23, 2017
Tweet
Share
More Decks by Ryota Hayashi
See All by Ryota Hayashi
パスワードレスアプリをつくる
hayashi311
0
1.2k
アイコンフォントの自動生成
hayashi311
2
1.6k
アセットマネジメントとシンボルフォントの話
hayashi311
0
240
Interface builderでカスタムViewのライブレンダリング
hayashi311
0
2k
Other Decks in Technology
See All in Technology
データの品質が低いと何が困るのか
kzykmyzw
6
1k
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
5.1k
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
1
1.1k
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
480
SCSAから学ぶセキュリティ管理
masakamayama
0
140
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
1
1.3k
ビジネスと現場活動をつなぐソフトウェアエンジニアリング~とあるスタートアッププロダクトの成長記録より~
mizunori
0
210
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.2k
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
12
4.5k
君はPostScriptなウィンドウシステム 「NeWS」をご存知か?/sunnews
koyhoge
0
720
Ask! NIKKEIの運用基盤と改善に向けた取り組み / NIKKEI TECH TALK #30
kaitomajima
1
450
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.4k
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Documentation Writing (for coders)
carmenintech
67
4.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Into the Great Unknown - MozCon
thekraken
35
1.6k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Unsuck your backbone
ammeep
669
57k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Transcript
Storyboard͍͍Α @hayashi311
ΞϓϦ։ൃΉ͔͍ͣ
ϓϩμΫτͷҭͯํ
ݱ࣮ࢼߦࡨޡͷ܁Γฦ͠
ը໘ભҠ ը໘ϨΠΞτ UIίϯϙʔωϯτ ελΠϧ ϘλϯɺೖྗϑΟʔϧυͳͲ ςΩετ৭ͳͲ શମͷϨΠΞτɺ CellɺϔομͷϨΠΞτͳͲ
ը໘ભҠ ը໘ϨΠΞτ UIίϯϙʔωϯτ ελΠϧ Ұ؏ੑ͕ॏཁ ͨ·ʹมߋ มߋ͕ଟ͍
ը໘ભҠ ը໘ϨΠΞτ UIίϯϙʔωϯτ ελΠϧ Storyboard
ਏ͍ύλʔϯɺͨͱ͑ ελΠϧΛStoryboard্Ͱઃఆ͗͢͠ Ͱɺগͣͭ͠ελΠϧ͕ͣΕ͍ͯΔ
ਏ͍ύλʔϯɺͨͱ͑ UIίϯϙʔωϯτΛStoryboard্Ͱ࡞ΓࠐΈ͗͢ Ͱɺಉ͡StoryboardΛ2ͱ࡞Εͳ͍
Keep a storyboard simple StoryboardΧδϡΞϧʹ࡞ΓɺΧδϡΞϧʹࣺͯΔ ͦͷͨΊʹγϯϓϧʹ
Storyboardͱ૬ੑͷΑ͍UIίϯϙʔωϯτΛ࡞Δ ͦͯ͠ɺStoryboard؆୯ʹ
AutoLayoutͱ૬ੑͷ͍͍UIίϯϙʔωϯτΛ࡞Δ layoutSubviews intrinsicContentSize
@IBInspectable
hitTestͷoverride Button λοϓʹԠ͢ΔྖҬ Viewͷframe
UIWindowΛىʹhitTest͕࠶ؼతʹݺͼग़͞ΕΔ func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView?
{ if { for subview in subviews { if let hitView = subview. { return hitView } } return self } return nil }
Self-Sizing Cells
Self-Sizing Cells Self-Sizing Cells tableView.register(GoldenRatioCell.self, forCellReuseIdentifier: "Cell") tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = 10
Self-Sizing Cells: ԫۚൺCell class GoldenRatioCell: UITableViewCell { override func systemLayoutSizeFitting(_
targetSize: CGSize, …) -> CGSize { return CGSize(width: targetSize.width, height: targetSize.width * 0.618) // ԫۚൺ } }
None
Storyboard
Storyboard AutoLayout - Code
Storyboard AutoLayout - Code layoutSubview
Storyboard AutoLayout - Code layoutSubview
Storyboard AutoLayout - Code layoutSubview
None
Storyboard
layoutSubview
มԽͷଟ͍ը໘ϨΠΞτʹStoryboardͷεϐʔυ͕ඞཁ Storyboard/ίʔυɺAutoLayout/layoutSubviewsΛΈ߹ΘͤΔ ࢼߦࡨޡͯ͠ɺ͍͍ΞϓϦΛ࡞Γ·͠ΐ͏ :)
None
2017.09.15 (Fri) - 17 (Sun)
None