CloudKitで作業するには、すべてのタイプがObjective-C基礎クラスである必要があります。 CloudKitで使用されるほとんどのタイプはSwiftからObj-Cにブリッジされるため、問題はありません(record[key] = 1 as NSNumber
)が、Array<String>
を適切なCloudKitタイプ(CKダッシュボードの文字列リスト)に変換する際に問題があります。私はキャストする方法<String>をNSArrayにNSStringの完全なNSString
record[key] = ([myString] as [NSString]) as NSArray
動作しますが、そのような運を考え出し。どのように私はこれを変換できますか?
新しいものに配列をマッピングすることは、ブリッジされると思われる種類のオーバーヘッドのように思えます。 – jjatie
シンプルなのは 'let nsa = NSArray(配列:a.map($ NS as NSString))' ... – Grimxn
...または 'let nsa1 = NSArray(array:a)' ... – Grimxn