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
450
まだ見ぬAPIに思いを馳せて
sixeight
0
160
復習OptionSet
sixeight
0
320
今年読んだまんが
sixeight
0
260
べんりな検索ワード
sixeight
0
280
UIPreviewInteraction: Overview
sixeight
1
660
Accessing the Music Library
sixeight
1
2.9k
Web APIについての雑談
sixeight
0
420
Other Decks in Programming
See All in Programming
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.4k
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
560
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
110
React本体のコードリーディング
high_g_engineer
1
160
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
5
1.8k
レビュー履歴をAIに食わせて、 Compose移行を加速するs
shihochan
0
250
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
700
Press start. Python's next generation.
willingc
PRO
3
290
Dockerfile CMD for Node.js
grazie1999
0
160
Introducing Stack Pull Request in GitHub
kkamegawa
0
120
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
470
高専、大学編入、そして未踏へ〜プロダクト開発とキャリアの歩み - Technical College, University Transfer, and On to “Mitou” / My Journey in Product Development and Career
pkmiya
0
110
Featured
See All Featured
How to make the Groovebox
asonas
2
2.4k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Fireside Chat
paigeccino
42
4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
980
Automating Front-end Workflow
addyosmani
1369
210k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
490
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Accessibility Awareness
sabderemane
1
190
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
The browser strikes back
jonoalderson
0
1.6k
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Λ͏
ϋοϐʔϋϩΟϯ