[英]Unable to get ABMutableMultiValueRef in Swift
我正在做一個與AddressBook一起使用的小項目,但很難找到解決該問題的方法。
在Obj-C中,創建可變的多值屬性如下所示:
ABMutableMultiValueRef multiAddress = ABMultiValueCreateMutable(kABMultiDictionaryPropertyType);
但是在Swift中,以同樣的方式進行操作,我得到一個錯誤:
var multiAddress : ABMutableMultiValueRef = ABMultiValueCreateMutable(kABMultiDictionaryPropertyType)
錯誤顯示為“'Int'無法轉換為'ABPropertyType'。” 我是在嘲笑一些愚蠢的語法錯誤,還是這里的區別到底是什么?
看起來ABPropertyType
是一個別名為UInt32
的類型,而所有常量(如kABMultiDictionaryPropertyType
都定義為Int
。 在Swift中,您不能在不進行轉換的情況下使用一個來替代另一個-這應該可以解決問題:
var multiAddress = ABMultiValueCreateMutable(ABPropertyType(kABMultiDictionaryPropertyType))
這將為您提供Unmanaged<ABMutableMultiValue>!
的實例Unmanaged<ABMutableMultiValue>!
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.