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
Readable Width in action
Search
Tomohiro Nishimura
October 26, 2016
Programming
200
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Readable Width in action
Tomohiro Nishimura
October 26, 2016
More Decks by Tomohiro Nishimura
See All by Tomohiro Nishimura
レガシーシステム洗い出し大作戦
sixeight
0
1.7k
我々のRealmはどこからやってくるのか
sixeight
1
430
まだ見ぬAPIに思いを馳せて
sixeight
0
160
復習OptionSet
sixeight
0
310
今年読んだまんが
sixeight
0
260
べんりな検索ワード
sixeight
0
270
UIPreviewInteraction: Overview
sixeight
1
650
Accessing the Music Library
sixeight
1
2.9k
Web APIについての雑談
sixeight
0
420
Other Decks in Programming
See All in Programming
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
180
ふつうのFeature Flag実践入門
irof
7
4k
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.3k
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
6.7k
Webフレームワークの ベンチマークについて
yusukebe
0
170
スマートグラスで並列バイブコーディング
hyshu
0
150
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
650
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
200
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
590
AIで効率化できた業務・日常
ochtum
0
140
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
390
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
120
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
220
The untapped power of vector embeddings
frankvandijk
2
1.8k
Un-Boring Meetings
codingconduct
0
320
How GitHub (no longer) Works
holman
316
150k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Exploring anti-patterns in Rails
aemeredith
3
410
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
230
Believing is Seeing
oripsolob
1
150
Transcript
࣮ફ3FBEBCMF8JEUI ؔϞόΠϧΞϓϦݚڀձ
JE4JYFJHIU w ג ͯͳ w J04ΞϓϦॻ͖࢝ΊͯҰܦͬͨ w ࠷ۙͷτϐοΫ͕ͳ͍ͷ͕ΈͰ͢ w !UPNPIJ@SP
3FBEBCMF8JEUI
ਓ͕ؒ಄Λಈ͔ͣ͞ʹจ ࣈ͕ಡΊΔ෯ ͬ͘͟Γ
None
None
None
3FBEBCMF8JEUI
None
None
ৄ͘͠
ࢿྉݟ͍ͨͰ͢
None
࣮ફ3FBEBCMF8JEUI ؔϞόΠϧΞϓϦݚڀձ
༰ w جຊ w 6*5BCMF w #BTJD$FMM w $VTUPN$FMM w
8JUI"DDFTTPSZ7JFX w ίʔυ͔Βࢦఆ͢Δ
༰ w جຊ w 6*5BCMF w #BTJD$FMM w $VTUPN$FMM w
8JUI"DDFTTPSZ7JFX w ίʔυ͔Βࢦఆ͢Δ
None
None
None
None
-BZPVU.BSHJOT(VJEF MFBEJOHBODIPS
None
None
3FBEBCMF$POUFOU(VJEF MFBEJOHBODIPS
༰ w جຊ w 6*5BCMF w #BTJD$FMM w $VTUPN$FMM w
8JUI"DDFTTPSZ7JFX w ίʔυ͔Βࢦఆ͢Δ
None
None
DFMM-BZPVU.BSHJOT'PMM PX3FBEBCMF8JEUI class TableViewController: UITableViewController { override func viewDidLoad() {
super.viewDidLoad() tableView.cellLayoutMarginsFollowReadableWidth = true } }
None
༰ w جຊ w 6*5BCMF w #BTJD$FMM w $VTUPN$FMM w
8JUI"DDFTTPSZ7JFX w ίʔυ͔Βࢦఆ͢Δ
None
None
None
None
DFMM-BZPVU.BSHJOT'PMM PX3FBEBCMF8JEUI class TableViewController: UITableViewController { override func viewDidLoad() {
super.viewDidLoad() tableView.cellLayoutMarginsFollowReadableWidth = true } }
None
༰ w جຊ w 6*5BCMF w #BTJD$FMM w $VTUPN$FMM w
8JUI"DDFTTPSZ7JFX w ίʔυ͔Βࢦఆ͢Δ
None
None
None
None
None
༰ w جຊ w 6*5BCMF w #BTJD$FMM w $VTUPN$FMM w
8JUIBDDFTTPSZWJFX w ίʔυ͔Βࢦఆ͢Δ
None
private func setup() { label = UILabel() label.text = "Section
Header" label.font = UIFont.boldSystemFont(ofSize: 15) contentView.addSubview(label) } override func layoutSubviews() { super.layoutSubviews() label.sizeToFit() let insetY = (bounds.height - label.bounds.height) / 2 label.frame = bounds.insetBy(dx: 16, dy: insetY) }
None
private func setup() { label = UILabel() label.text = "Section
Header" label.font = UIFont.boldSystemFont(ofSize: 15) label.translatesAutoresizingMaskIntoConstraints = false contentView.addSubview(label) let guide = contentView.readableContentGuide NSLayoutConstraint.activate([ label.topAnchor.constraint(equalTo: guide.topAnchor), label.bottomAnchor.constraint(equalTo: guide.bottomAnchor), label.leadingAnchor.constraint(equalTo: guide.leadingAnchor), label.trailingAnchor.constraint(equalTo: guide.trailingAnchor), ]) }
None
·ͱΊ w 4VQFSWJFXͷ'PMMPX3FBEBCMF8JEUIΛ ༗ޮʹ͢Δ w 6*5BCMF7JFXͷ DFMM-BZPVU.BSHJOT'PMMPX3FBEBCMF8J EUIΛ͏ w 6*7JFXͷSFBEBCMF$POUFOU(VJEFΛ͏
ϋοϐʔϋϩΟϯ