我在swift類中聲明瞭屬性var coordinate:CLLocationCoordinate2D?
但我在obj-c類中找不到此屬性。我曾嘗試在課前添加@obj
,但它不起作用。obj-c類中未知的swift屬性
0
A
回答
0
您不能訪問實例變量,因爲座標:CLLocationCoordinate2D沒有與目標C橋接,而是聲明CLLocationCoordinate2D,您可以將經度和緯度聲明爲NSNumber類型,稍後使用它們進行2D座標。
var lat: NSNumber?
var lon: NSNumber?
,然後在Objc等級分配值波紋管:
switObject.lat = @3;
switObject.lon = @5;
欲瞭解更多信息,檢查此鏈接Cannot access property of Swift type from Objective-C
0
問題是您已聲明optional
屬性(?
),這是一個純粹的Swift
構造。除非特別橋接,否則不能通過Objective C
類訪問,例如String
->NSString
。
0
對象 - 不支持可選結構。但如果你使它非可選,它編譯:
import CoreLocation
class Class : NSObject
{
dynamic var coordinate:CLLocationCoordinate2D // no `?`: non-optional
override init()
{
coordinate = CLLocationCoordinate2D() // it's not optional, so you must initialize `coordinate`
}
}
相關問題
- 1. 在Swift中觀察ObjC類的屬性
- 2. Applescript-objc - 訪問類屬性
- 3. C#未知類型屬性
- 4. 返回類型中的未知屬性
- 5. JRBeanCollectionDataSource - 未知屬性的類「NOTAS「類model.Notas」
- 6. java.lang.NoSuchMethodException:未知屬性的類 '類java.lang.Class'
- 7. Swift中的類型屬性
- 8. 未知屬性
- 9. java.lang.NoSuchMethodException:類'java.lang.String'上的未知屬性''
- 10. 未知屬性XSI:類型的XmlSerializer
- 11. 屬性列表支持ObjC類型
- 12. Swift:類中的計算類型屬性
- 13. 未知屬性`user_id'
- 14. 未知屬性5
- 15. java.lang.NoSuchMethodException:未知屬性
- 16. JSON到C#類 - 未知屬性名稱
- 17. 在Objc項目中使用Swift類
- 18. 未能對未知屬性W /通知
- 19. Rails的未知屬性
- 20. 設計的未知屬性
- 21. 未知的屬性@ Validation.For(「orderName」)
- 22. 未知的屬性(W)
- 23. StringWithFormat「%.2ld」objc swift
- 24. ObjC,Swift to WinObjC
- 25. 在swift中導入swift鏈接的objc類
- 26. Swift類中的下劃線屬性?
- 27. 不屬於swift的類屬性
- 28. SpringBoot application.properties中的未知屬性
- 29. lambda函數中的未知類型的引用屬性
- 30. IE9中文本節點==「未知」的「nodeValue」屬性的類型
如果你讓它是非可選的,它會工作。 ('CLLocationCoordinate2D') – nielsbot