簡體   English   中英

NSNotificationCenter中的字典值類型userInfo

[英]Dictionary value type in NSNotificationCenter userInfo

在實現下一個代碼時:

func locationManager(manager: CLLocationManager!, didChangeAuthorizationStatus status: CLAuthorizationStatus) {

    NSNotificationCenter.defaultCenter().postNotificationName("gotAuthorization", object: nil, userInfo: ["status": status])

}

我收到下一個錯誤:

cannot invoke 'postNotificationName' with argument list of type...

另一方面,如果我將狀態更改為某個簡單值(例如字符串或整數),則一切正常。

CLAuthorizationStatus是一個枚舉,最終是Int32。 那么將其作為Dictionary的值有什么問題呢?

我在這里想念的是什么:\\

該參數采用[NSObject:AnyObject]的字典嗎? 並不意味着聽起來像編譯器,但Int32不符合AnyObject協議。 它不會自動橋接到NSNumber,因此您需要進行強制轉換。

["status": Int(status.rawValue)]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM