簡體   English   中英

嘗試使用可選雙精度 Swift 時“在范圍內找不到 'RealmProperty'”

[英]"Cannot find 'RealmProperty' in scope" when trying to use optional double, Swift

我正在使用 Realm Sync 為我的 iOS 應用程序存儲數據,編碼為 Swift。 我想為 Realm object(User_budgets)創建一個可選的雙重屬性(預算)。 I created the object in the Realm schema and then copied in the Data model SDK that Realm produces which is as below:

import Foundation
import RealmSwift

class User_budgets: EmbeddedObject {
    let budget = RealmProperty<Double>()
    @objc dynamic var date: Date? = nil
}

然后我得到錯誤:“在范圍內找不到'RealmProperty'”。 我嘗試將代碼更改為以下內容:

@objc dynamic var budget: Double? = nil

但后來我得到錯誤:“屬性不能被標記為@objc,因為它的類型不能在Objective-C中表示”

我進行了搜索,但似乎找不到以前遇到此問題的任何人。 有一個簡單的解決方法,就是將budget 屬性設為必需(非可選),但最好知道將來如何創建可選的雙重屬性。 誰能幫我嗎?

我相信您對該可選選項使用了錯誤的定義,因為它僅在 beta 10.8.0-beta.0 中可用:

你所擁有的是

let budget = RealmProperty<Double>()

對於所有其他版本,它應該是

let budget = RealmOptional<Double>()

請參閱RealmProperty 和 RealmOptional

哦,這是所有支持屬性類型的鏈接

暫無
暫無

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

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