2016-07-26 82 views
0

我創建了一個接收遠程推送規範的代碼,該代碼工作正常。現在我需要添加兩個「按鈕」,它們可以甩開並執行一個動作。我知道這下面的代碼是用來indetify動作遠程推送通知操作

func application(application: UIApplication, handleActionWithIdentifier identifier: String?, forLocalNotification notification: UILocalNotification, completionHandler:() -> Void) { 

    if identifier == "optin1" { 
     //do something 
    } 
    else identifier == "option2" { 
     //do something 
    } 

    completionHandler() 
} 

,但我不知道如何創建按鈕SWIP離開。我該怎麼辦呢

這是我的AppDelegate:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
{ 
    // Override point for customization after application launch. 
    let types:UIUserNotificationType = [.Alert, .Sound, .Badge] 


    application.registerForRemoteNotifications() 
    application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: types, categories: nil)) 

    initLocationManager() 

    return true 

} 
func application(application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: NSError) { 
    //print(error) 
} 

func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) { 

    print(deviceToken) 

} 


func application(application: UIApplication, didReceiveRemoteNotificationuserInfo userInfo: [NSObject : AnyObject]) { 
    print(userInfo) 
} 

回答

0

您可以複製&粘貼此代碼在didFinishLaunchingWithOptions方法:

  1. 創建操作

    // NOTFICATION 
    let incrementAction = UIMutableUserNotificationAction() 
    incrementAction.identifier = "HI_ACTION" 
    incrementAction.title = "Hi!" 
    incrementAction.activationMode = UIUserNotificationActivationMode.Background 
    incrementAction.authenticationRequired = false 
    incrementAction.destructive = false 
    
  2. 創建類別

    let counterCategory = UIMutableUserNotificationCategory() 
    counterCategory.identifier = "HELLO_CATEGORY" 
    
  3. 準動作和類別

    counterCategory.setActions([incrementAction], 
              forContext: UIUserNotificationActionContext.Default) 
    counterCategory.setActions([incrementAction], 
              forContext: UIUserNotificationActionContext.Minimal) 
    
  4. 註冊

    let categories = NSSet(object: counterCategory) as! Set<UIUserNotificationCategory> 
    let settings = UIUserNotificationSettings(forTypes: [.Alert, .Sound], categories: categories) 
    UIApplication.sharedApplication().registerUserNotificationSettings(settings) 
    
  5. 的最後一步是隻對筆畫演示

    let notification = UILocalNotification() 
    notification.alertBody = "Hey!" 
    notification.soundName = UILocalNotificationDefaultSoundName 
    notification.fireDate = NSDate(timeIntervalSinceNow: 5) 
    notification.category = "HELLO_CATEGORY" 
    
    UIApplication.sharedApplication().scheduleLocalNotification(notification) 
    

當應用程序被啓動,你要推CMD + 大號

這裏有一個link to an example