WWDC 2017
Session video and resources: https://developer.apple.com/videos/play/wwdc2017/227/
- Providing data
tableView performDropWith coordinator
delegate
progress.fractionCompleted
&progress.isFinished
properties for UIprogress.cancel()
-> propagates error in completion- One
Progress
object per load request
- One
NSItemProvider
= one 'thing' being dragged - Multiple representations
- Fidelity order
- Highest fidelity first
- Use concrete uniform type identifiers
- Abstract item
public.utf8-plain-text
public.png
- Private type identifiers
com.yourcompany.vector-drawing
- Abstract item
writableTypeIdentifiersForItemProvider
array with highest fidelity orderloadData(withTypeIdentifier...)
readableTypeIdentifiers
array in fidelity order as wellpublic init(itemProviderData...)
- Providing
- As
NSData
- As a file or folder
- As a reference into a file provider
- As
- Retrieving
- Copy as
NSData
- Copy as file or folder
- Attempt to open file in place
- Copy as
- Return your own
Progress
- Restrict visibility
- To same application
- To same team
- To everyone
- Team Data
teamData
property up to 8 KB of metadata exclusive to your team if needed
- Suggested Name
suggestedName
property