私はコアデータを使用しています。私のプロパティを読み込もうとすると、それらは0や1などの数値として読み込まれます。セットアップ。私の最終的な目標は真偽にブール値を保存し、それをそのまま読むことです。セットアップで何か間違っているのか、何か不足していますか?私は投稿 iPhone: Save boolean into Core Dataを見てきましたが、OBJ Cのほかに、データモデルのオプションでブール値が利用できると思います。私はコアデータを使用しており、私のブール値は数値として読み込まれています
func saveFilters(bathAny: Bool, bath1: Bool, bath2: Bool, bath3: Bool, bath4: Bool){
let context = getContext()
let entity = NSEntityDescription.entity(forEntityName: "FilterCoreDataObj", in: context)
let transc = NSManagedObject(entity: entity!, insertInto: context)
//SET ENTITY VALUES
transc.setValue(bathAny, forKey: "bathAny")
transc.setValue(bath1, forKey: "bath1")
transc.setValue(bath2, forKey: "bath2")
transc.setValue(bath3, forKey: "bath3")
transc.setValue(bath4, forKey: "bath4")
do {
try context.save()
print("saved")
} catch let error as NSError {
print("could not save \(error), \(error.userInfo)")
} catch {
}
}
読むのFunc
func getTranscriptions(bathAny: Bool, bath1: Bool, bath2: Bool, bath3: Bool, bath4: Bool) {
let fetchRequest: NSFetchRequest<FilterCoreDataObj> = FilterCoreDataObj.fetchRequest()
do {
let searchResults = try getContext().fetch(fetchRequest)
print("num of results = \(searchResults.count)")
for trans in searchResults {
print("bath 1 \(trans.value(forKey: "bath1"))")
}
} catch {
print("Error with request: \(error)")
}
}
可能な複製の[iPhone:ブーリアンをコアデータに保存](0120-18751) – keithbhunter
これはすばやく、コアデータが変更されました。 lotをSwift 3に追加しました。また、datModelでは、プロパティをブール値 –