WordPressやSymfonyのTipsを中心にアニメや日常の出来事について語ります。
メニュー

Swift2 RealmでOptionalのDouble型を宣言したら怒られた話

この記事は約1分42秒で読めます

Apple Swift
ゆっきー
ども、カフェブロガーの悠木です。 お気に入りのカフェはドトールコーヒーです。 14時からの限定スイーツ「シューシャポー」が大好きです。

Swift2でRealmオブジェクトの定義の際にDouble型でOptional指定をしたら次のエラーが発生しました。

Property cannnot be marked dynamic because its type cannnot be represented in Objective-C

これで怒られちゃうんですよ。
文字列型は問題なさそうですが、数値型だとoptionalを指定できないみたいです。

数値型の各種については直接Optionalを指定できない

各種、数値型・ブーリアン型はRealmOptionalを使わないとnilを扱えません。
ということらしいです。

このようにRealmOptionalでラップする必要があります。
また、RealmOptional型のプロパティはletで宣言する必要があり、dynamicを付けてはいけません。

実際の値を取得・設定するにはvalueプロパティを使用します。

使い方はこんな感じですね。
参考にした記事がちょうど一ヶ月前の2015/10/19なので最近サポートされたばかりでしょうか。

追記 Realm公式さんからコメントをいただきました。

参考にしたサイト、記事

関連記事

  1. Apple Swift
  2. Apple Swift

PR

カテゴリー