2015-12-17 3 views
0

Я искал справочную ссылку UIKit и наткнулся на UIApplicationShortcutItem. Это для 3D Touch.Реализация UIApplicationShortcutItem

Он содержит этот образец кода:

let existingShortcutItems = UIApplication.sharedApplication().shortcutItems ?? [] 
let anExistingShortcutItem = existingShortcutItems[anIndex] 
var updatedShortcutItems = existingShortcutItems 
let aMutableShortcutItem = anExistingShortcutItem.mutableCopy() as! UIMutableApplicationShortcutItem 
aMutableShortcutItem.localizedTitle = “New Title" 
updatedShortcutItems[anIndex] = aMutableShortcutItem 
UIApplication.sharedApplication().shortcutItems = updatedShortcutItemsode here 

Если я правильно вы положили это в приложение делегата?

И как это работает? Вызывается метод localizedTitle, чтобы проверить название выбранного действия, а затем вызвать действие с этим заголовком? Где проводятся акции?

ответ

0

Код, который вы предоставили, позволит вам создавать ярлыки (т. Е. Пользовательский интерфейс, связанный с короткими сокращениями, которые отображаются на главном экране, когда пользователь 3D касается значка приложения). Чтобы ответить на эти контекстные элементы, которые необходимо реализовать:

- (void)application:(UIApplication *)application 
performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem 
    completionHandler:(void (^)(BOOL succeeded))completionHandler 

или

optional func application(application: UIApplication, 
performActionForShortcutItem shortcutItem: UIApplicationShortcutItem, 
      completionHandler completionHandler: (Bool) -> Void) 

в вашем UIApplicationDelegate. Вы можете прочитать об этом в UIApplicationDelegate Protocol Reference Guide. Но суть в том, что этот метод будет вызываться, когда ваше приложение запускается из ярлыка, и вы можете проверить ярлык для выполнения соответствующего действия.