1. ホーム
  2. delegates

[解決済み] デレゲート・イン・スイフト?

2022-05-25 19:08:43

質問

デリゲートを作るにはどうしたらよいのでしょうか。 NSUserNotificationCenterDelegate を作るにはどうしたらいいですか?

どのように解決するのですか?

obj-cと大差はありません。 まず、以下のようにクラス宣言でプロトコルを指定する必要があります。

class MyClass: NSUserNotificationCenterDelegate

実装は以下のようになります。

// NSUserNotificationCenterDelegate implementation
func userNotificationCenter(center: NSUserNotificationCenter, didDeliverNotification notification: NSUserNotification) {
    //implementation
}

func userNotificationCenter(center: NSUserNotificationCenter, didActivateNotification notification: NSUserNotification) {
    //implementation
}

func userNotificationCenter(center: NSUserNotificationCenter, shouldPresentNotification notification: NSUserNotification) -> Bool {
    //implementation
    return true
}

もちろん、デリゲートを設定する必要があります。例えば

NSUserNotificationCenter.defaultUserNotificationCenter().delegate = self;