工作我們的代碼庫轉換爲斯威夫特3,我有這樣的問題:免費橋接至NSError不是斯威夫特3
ABAddressBookRequestAccessWithCompletion(addressBookRef) { (granted: Bool, error: CFError?) in
DispatchQueue.main.async {
if let nsError = error as NSError {
...
}
}
}
編譯器錯誤是: Cannot convert value of type 'CFError?' to type 'NSError' in coercion
更改爲:
if let nsError = error as? NSError { ... }
給出警告:Cast from 'CFError?' to unrelated type 'NSError' always fails
請原諒我指出這一點,但ABAddressBook已棄用。 – matt
'如果讓nsError =錯誤爲錯誤? {...}'應該可以工作,但我目前無法測試它,並且正如@matt所說的那樣,反正這個API已經被棄用了。 –
@matt仍然支持iOS 8 – Ramsel