2017-01-19 3 views
2

レコードタイプに新しいフィールドを追加しようとすると、Boolタイプを追加することはできません。とにかく私はこれをどうやって行うことができますかレコードタイプにBoolタイプのフィールドを作成するにはどうすればよいですか?

enter image description here

+1

'Int(64)' - 1が真、0が偽です。 – luk2302

+0

その他のソリューションはありませんか? Int経由でのみ? –

+0

さて、2つの特定の値を持つデータ型を使うことはできますが、Intは最も明快で簡単なものです。 – luk2302

答えて

3

、次の表では、CloudKitに可能なフィールドタイプが含まれています

enter image description here

残念ながら、見つかりませBool型はありません。

のInt卓上で述べた(64)クラス-asスウィフトブールを返すboolValueを持っているNSNumberです:ので、私はブールの交換であることが最も適している-logically-見つけることは、Int(64)です

数値オブジェクトの値はブール値で表されます。 0の値 は常にfalseを意味し、0以外の値はtrueと解釈されます。

詳細については、NSNumberのドキュメントを参照してください。

これは、アプリケーション内でBoolとして扱いやすくなります。例えば:

let myFalseNumber:NSNumber = 0.0 
let myTrueNumber:NSNumber = 0.
let anotherTrueNumber: NSNumber = -99 

print(myFalseNumber.boolValue) // false 
print(myTrueNumber.boolValue) // true 
print(anotherTrueNumber.boolValue) // true 

Int(64)Double共にのNSNumber、(CloudKitタイプ)Int(64)代わりにDoubleを選択すると、任意のフローティングなし(「1、偽ならtrueの場合と0を」治療の一般理由として扱われているがポイント)。詳細については、Boolean data type - Generalities (Wikipedia)をチェックしてください。

希望しました。

関連する問題