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
First step of 3D touch
Search
sonson
November 08, 2016
Programming
0
640
First step of 3D touch
sonson
November 08, 2016
Tweet
Share
More Decks by sonson
See All by sonson
計算グラフのJITコンパイラをLLVM on C++で作ろう
sonsongithub
2
590
LLVMでHalideみたいな計算グラフ+JITを作りたい
sonsongithub
0
1.5k
LLVM Tutorial 02 - わいわいswiftc
sonsongithub
1
420
LLVM Tutorial - わいわいswiftc
sonsongithub
0
320
How to make and publish a Swift playground book for iPad
sonsongithub
5
19k
Swiftで実装するHTML特殊文字の高速処理
sonsongithub
3
7.8k
Getting started with 3D Touch
sonsongithub
0
730
SSLって必要ですか〜Let's Encryptを試してみよう
sonsongithub
3
560
Other Decks in Programming
See All in Programming
リッチエディターを安全に開発・運用するために
unachang113
1
250
Workers を定期実行する方法は一つじゃない
rokuosan
0
130
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
460
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
350
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
560
202507_ADKで始めるエージェント開発の基本 〜デモを通じて紹介〜(奥田りさ)
risatube
PRO
5
1.1k
React は次の10年を生き残れるか:3つのトレンドから考える
oukayuka
40
15k
階層化自動テストで開発に機動力を
ickx
1
420
Google I/O Extended Incheon 2025 ~ What's new in Android development tools
pluu
1
190
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
260
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
2
720
Streamlitで実現できるようになったこと、実現してくれたこと
ayumu_yamaguchi
2
220
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
How to Ace a Technical Interview
jacobian
278
23k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Transcript
How to show it. Tech. Yuichi Yoshida Researcher, DENSO IT
Laboratory, Inc. #???? @sonson_twit © 2014 DENSO IT Laboratory, Inc., All rights reserved. Redistribution or public display not permitted without written permission from DENSO IT Laboratory, Inc. First step of 3D touch
ࣗݾհ • sonson • twitter: sonson_twit • github: sonsongithub •
portfolio • reddift(SwiftͰॻ͍ͨreddit.comͷAPIϥούʔ) • ࣄ • ը૾ೝࣝ/ݕࡧ/ͦΕΛͬͨΞϓϦ • ػցֶशͷ͓ษڧͱ͔ॾʑͱ͔
͜ͷϘέͳ͍ྖҬͷઃఆʙμϝͳྫ
͜ͷϘέͳ͍ྖҬͷઃఆʙOK
͜ͷϘέͳ͍ྖҬͷઃఆʙҰ൪͍͍
දࣔͷྲྀΕ • registerForPreviewingͰ४උ͢Δ • ͜͜Ͱ3D touchʹԠ͢ΔviewΛઃఆ͢Δ • previewingContext(_:viewControllerForLocation:) • sourceRectΛઃఆ͢Δ
• ্Ͱઃఆͨ͠viewͷ࠲ඪܥͰsourceRectΛηοτ
registerForPreviewing
previewingContext(_:viewControllerForLocation:) • Body
previewingContext(_:viewControllerForLocation:) 6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF 6*7JFX$POUSPMMFS 7JFX
previewingContext(_:viewControllerForLocation:) 6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF 6*7JFX$POUSPMMFS 7JFX %UPVDIൃੜ
previewingContext(_:viewControllerForLocation:) 6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF 6*7JFX$POUSPMMFS 7JFX ͳΜ͔ίϯςϯπ͋Δʁ ίϯςϯπ
previewingContext(_:viewControllerForLocation:) 6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF 6*7JFX$POUSPMMFS 7JFX 6*7JFX$POUSPMMFS ͜ͷྖҬ͔Β ͜ͷ7JFX$POUSPMMFSΛදࣔͯ͠ ίϯςϯπ
previewingContext(_:viewControllerForLocation:) • Body
previewingContext(_:viewControllerForLocation:) • Body
previewingContext(_:viewControllerForLocation:)
UIView.convert • ͋Δview͔Βݟͨɼ͋ΔviewͷrectΛܭࢉͯ͘͠ΕΔ • a.convert(rect:, to:b) • view aͷrectΛview b͔Βݟͨrectʹม
• a.convert(rect:, from:b) • view bͷrectΛview a͔Βݟͨrectʹม • ͋Γ·͢ • a.convert(point: to:b) • a.convert(point: from:b)
UIView.convert f=(200,50,50,60) b a c
UIView.convert f=(200,50,50,60) b a a.convert(f, from:c) => (800,80,50,60) c
UIView.convert f=(200,50,50,60) b a c.convert(f, to:a) => (800,80,50,60) c
Ԡ༻͢Δͱ
previewingContext(_:viewControllerForLocation:) • Body
αϯϓϧ • UZTextView • https://github.com/sonsongithub/UZTextView • developϒϥϯν
3D Touchͷςετ • ࣮ػ • Simulator
·ͱΊ • registerForPreviewingͰ४උ • viewΛొ • previewingContext(_:viewControllerForLocation:) • view controllerΛ࡞
• Ξχϝʔγϣϯ͍ͤͨ͞ྖҬΛܭࢉ • ฦ͢
None