3D Touch
Home Screen Quick
Actions
• Static quick actions

• Info.plist,
UIApplicationShortcutItems

• install 

• Dynamic quick actions

• UIApplication shortcutItems

• runtime 

• 4
Static quick actions
Static quick actions
Key Description
UIApplicationShortcutItemType
(required)

quick action
UIApplicationShortcutItemTitle
(required)
quick action 



UIApplicationShortcutItemSubtitle


UIApplicationShortcutItemIconType ( UIApplicationShortcutIcon Class Reference)
UIApplicationShortcutItemIconFile
App’s bundle asset catalog
UIApplicationShortcutItemIconType 

Icon 35x35
UIApplicationShortcutItemUserInfo
Dictionary



ex. app version
Dynamic quick actions
• UIMutableApplicationShortcutItem shortcutItems
NSArray <UIApplicationShortcutItem *> *existingShortcutItems = [[UIApplication sharedApplication]
shortcutItems];
NSMutableArray <UIApplicationShortcutItem *> *updatedShortcutItems = [existingShortcutItems
mutableCopy];
UIApplicationShortcutItem *anExistingShortcutItem = [existingShortcutItems objectAtIndex: anIndex];
UIMutableApplicationShortcutItem *aMutableShortcutItem = [anExistingShortcutItem mutableCopy];
[aMutableShortcutItem setLocalizedTitle: @"New Title"];
[updatedShortcutItems replaceObjectAtIndex: anIndex withObject: aMutableShortcutItem];
[[UIApplication sharedApplication] setShortcutItems: updatedShortcutItems];
• Create a dynamic quick action
• UIApplicationShortcutItem
Get notified on selection
• UIApplicationDelegate
application Your shared app object
shortcutItem Quick action object
completionHandler
quick action 

succeeded :
Peek(preview) and Pop(commit)
• 3D Touch
UITouch
• UIForceTouchCapability
• UIForceTouchCapabilityUnknown // 

• UIForceTouchCapabilityUnavailable //3D Touch 

• UIForceTouchCapabilityUnavailable //3D Touch
• User 3D Touch
UITouch
• force, maximumPossibleForce
UIViewControllerPreviewingDelegate
• view 3D touch

• Declaration
Peek and pop
• Peek
• Pop
previewingContext UIViewControllerPreviewing
location touch ( source view)
previewingContext UIViewControllerPreviewing
viewControllerToCommit Peek previewController
previewActionItems
• ViewController iOS 9 previewActionItems
function
• return action sheet previewView
UIPreviewActionGroup
UIPreviewActionGroup
• http://pinkstone.co.uk/how-to-use-3d-touch-in-ios-9-
part-2-preview-actions/
• http://pingguohe.net/2015/10/12/3D-Touch-2.html
• http://pingguohe.net/2015/10/08/3D-Touch-1.html
• 

https://github.com/DeskConnect/
SBShortcutMenuSimulator

3d touch

  • 1.
  • 2.
    Home Screen Quick Actions •Static quick actions • Info.plist, UIApplicationShortcutItems • install • Dynamic quick actions • UIApplication shortcutItems • runtime • 4
  • 3.
  • 4.
    Static quick actions KeyDescription UIApplicationShortcutItemType (required) quick action UIApplicationShortcutItemTitle (required) quick action UIApplicationShortcutItemSubtitle UIApplicationShortcutItemIconType ( UIApplicationShortcutIcon Class Reference) UIApplicationShortcutItemIconFile App’s bundle asset catalog UIApplicationShortcutItemIconType Icon 35x35 UIApplicationShortcutItemUserInfo Dictionary ex. app version
  • 5.
    Dynamic quick actions •UIMutableApplicationShortcutItem shortcutItems NSArray <UIApplicationShortcutItem *> *existingShortcutItems = [[UIApplication sharedApplication] shortcutItems]; NSMutableArray <UIApplicationShortcutItem *> *updatedShortcutItems = [existingShortcutItems mutableCopy]; UIApplicationShortcutItem *anExistingShortcutItem = [existingShortcutItems objectAtIndex: anIndex]; UIMutableApplicationShortcutItem *aMutableShortcutItem = [anExistingShortcutItem mutableCopy]; [aMutableShortcutItem setLocalizedTitle: @"New Title"]; [updatedShortcutItems replaceObjectAtIndex: anIndex withObject: aMutableShortcutItem]; [[UIApplication sharedApplication] setShortcutItems: updatedShortcutItems]; • Create a dynamic quick action • UIApplicationShortcutItem
  • 6.
    Get notified onselection • UIApplicationDelegate application Your shared app object shortcutItem Quick action object completionHandler quick action succeeded :
  • 7.
  • 8.
    • 3D Touch UITouch •UIForceTouchCapability • UIForceTouchCapabilityUnknown // • UIForceTouchCapabilityUnavailable //3D Touch • UIForceTouchCapabilityUnavailable //3D Touch • User 3D Touch
  • 9.
  • 10.
  • 11.
    Peek and pop •Peek • Pop previewingContext UIViewControllerPreviewing location touch ( source view) previewingContext UIViewControllerPreviewing viewControllerToCommit Peek previewController
  • 12.
    previewActionItems • ViewController iOS9 previewActionItems function • return action sheet previewView
  • 13.
  • 14.
  • 15.
    • http://pinkstone.co.uk/how-to-use-3d-touch-in-ios-9- part-2-preview-actions/ • http://pingguohe.net/2015/10/12/3D-Touch-2.html •http://pingguohe.net/2015/10/08/3D-Touch-1.html • 
 https://github.com/DeskConnect/ SBShortcutMenuSimulator