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
InterApp DnD in iOS 9
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
matuyuji
September 30, 2015
Programming
2.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
InterApp DnD in iOS 9
iOS 9 の split view でアプリ間でのドラッグ&ドロップのデモアプリの紹介と実装についての解説
matuyuji
September 30, 2015
More Decks by matuyuji
See All by matuyuji
Emacs × Touch Bar
matuyuji
2
1.9k
ARKit + SceneKitでMinesweeperを作ってみた
matuyuji
1
830
Go + QtでiOS アプリ開発
matuyuji
0
420
@_specialized なお話し
matuyuji
0
520
Xcode Souce Code Extensionを使ってみた
matuyuji
0
450
Codebeatを 試してみた
matuyuji
0
820
React Nativeで UIコンポーネントをつくる
matuyuji
0
1.1k
React Nativeを使ってみた
matuyuji
0
1.4k
SwiftでLens
matuyuji
1
1.1k
Other Decks in Programming
See All in Programming
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
240
CSC307 Lecture 17
javiergs
PRO
0
320
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
2
660
AutonomyとControlのあいだ:Graflowで記述するAIエージェント協調
myui
0
120
AIで効率化できた業務・日常
ochtum
0
120
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.4k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
Lessons from Spec-Driven Development
simas
PRO
0
170
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
150
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
6
4k
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
160
Claspは野良GASの夢をみるか
takter00
0
180
Featured
See All Featured
Fireside Chat
paigeccino
42
3.9k
Writing Fast Ruby
sferik
630
63k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
330
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Crafting Experiences
bethany
1
180
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
220
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
Skip the Path - Find Your Career Trail
mkilby
1
140
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
Embracing the Ebb and Flow
colly
88
5.1k
Transcript
%O%JOJ04 UIF&SBPG.VMUJUBTLJOH !NBUVZVKJ ؔϞόΠϧΞϓϦݚڀձ
!NBUVZVKJ TBGYEFWCMPHTQPUKQ
TBGYJPTEOEEFNP
.VMUJUBTLJOH 4MJEFPWFS 4QMJUWJFX 1JDUVSFJOQJDUVSF
Two foreground apps
4QMJUWJFXBMMPXTVTFSTUP JOUFSBDUCFUXFFOUXPBQQT
%O%CFUXFFO UXPBQQT
UPVDIFT.PWFE (-100, 400) (607, 400) (-507, 0) (507, 0) %SBHFWFOUTDPOUJOVFPOUIFPVUFSPGUIFXJOEPXPGBQQ
*OUFSBQQ%O% 4PVSDF"QQ %FTU"QQ touchesBegan touchesMoved touchesEnded 4IBQFJOGP $PPSEJOGP *OOFSPSPVUFS
*1$ w 1BTUFCPBSE w $'.FTTBHF1PSU X"QQ(SPVQT*% w .BDI1PSU mach_msg_send
w %BSXJO/PUJpDBUJPO w 4IBSFE6TFS%FGBVMUT X"QQ(SPVQT*%
1BTUFCPBSE 5JNFS UPPMBUFUPSFDFJWF6*1BTUFCPBSE$IBOHFE/PUJpDBUJPO let p = touches.first!.locationInView(view) myPasteboard.string = "M,\(Int(p.x)),\(Int(p.y))"
dispatch_source_set_timer(timer, now, USEC_PER_SEC * 50, 0) dispatch_source_set_event_handler(timer) { () -> Void in if let pb = UIPasteboard(name: otherID, create: false) { : } } dispatch_resume(timer) 4PVSDF"QQ VTFTOBNFEQBTUFCPBSE %FTU"QQ LOPXTTPVSDFBQQ`TQBTUFCPBSEOBNF
3FGFSFODFT w "EPQUJOH.VMUJUBTLJOH&OIBODFNFOUTPOJ1BE IUUQTEFWFMPQFSBQQMFDPNMJCSBSZQSFSFMFBTFJPTEPDVNFOUBUJPO8JOEPXT7JFXT$PODFQUVBM "EPQUJOH.VMUJUBTLJOH0OJ1BEJOEFYIUNM w *OUFSQSPDFTTDPNNVOJDBUJPOPOJ04XJUI.BDINFTTBHFT IUUQEEFWJMMFNFJOUFSQSPDFTTDPNNVOJDBUJPOPOJPTXJUINBDINFTTBHFT w
*OUFS1SPDFTT$PNNVOJDBUJPO IUUQOTIJQTUFSDPNJOUFSQSPDFTTDPNNVOJDBUJPO