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.7k
アセットマネジメントとシンボルフォントの話
hayashi311
0
250
Interface builderでカスタムViewのライブレンダリング
hayashi311
0
2k
Other Decks in Technology
See All in Technology
AWSで始める実践Dagster入門
kitagawaz
1
650
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
470
Android Audio: Beyond Winning On It
atsushieno
0
1.4k
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
12
4.8k
S3アクセス制御の設計ポイント
tommy0124
3
200
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
200
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
490
【実演版】カンファレンス登壇者・スタッフにこそ知ってほしいマイクの使い方 / 大吉祥寺.pm 2025
arthur1
1
890
人工衛星のファームウェアをRustで書く理由
koba789
15
8.1k
いま注目のAIエージェントを作ってみよう
supermarimobros
0
330
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
260
AIエージェントで90秒の広告動画を制作!台本・音声・映像・編集をつなぐAWS最新アーキテクチャの実践
nasuvitz
0
220
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Facilitating Awesome Meetings
lara
55
6.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Building an army of robots
kneath
306
46k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
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