Как я инициализирую основные объекты данных - PullRequest
0 голосов
/ 09 июня 2019

Я очень новичок в CoreData, у меня был класс, который инициализировал все мои объекты, установил их в массив и использовал .append из массива pickerView в массив TableView. Конечно, после завершения приложения массив tableview очищается. Я пытаюсь теперь использовать основные данные для сохранения, но tableView теперь возвращает каждый объект в моем коде. Как я могу выбрать объект и установить его для массива, используемого tableView. заранее спасибо

SavedRun - моя сущность

import Foundation
import CoreData


extension SavedRun {

@nonobjc public class func fetchRequest() -> NSFetchRequest<SavedRun> {
    return NSFetchRequest<SavedRun>(entityName: "SavedRun")
}

@NSManaged public var formulaTitle: String?
@NSManaged public var formulaNumber: String?
@NSManaged public var base: String?
@NSManaged public var baseValue: Double
@NSManaged public var vit: String?
@NSManaged public var vitValue: Double
@NSManaged public var min: String?
@NSManaged public var minValue: Double
@NSManaged public var verdNat: String?
@NSManaged public var verdNatValue: Double


}

тогда в моем классе инициации.

import UIKit

class AllFormulasTest {

var pickerArr = [SavedRun]()
static var tableArr : [SavedRun] = []

init() {

    let F1354670 = SavedRun(context: PersistenceService.context)
    F1354670.formulaNumber = "F1354670"
    F1354670.formulaTitle = "test formula title"
    F1354670.base = "Base name"
    F1354670.baseValue = 251.90
    F1354670.vit = "Vit name"
    F1354670.vitValue = 50.38
    F1354670.min = "Min name"
    F1354670.minValue = 45.34
    F1354670.verdNat = "Verd name"
    F1354670.verdNatValue = 16.79

    // I have about 200  formulas like the one above I use for my work.

    // pickerArr is used for my pickerView then appened to tableArr array of what needs to be made.
    pickerArr = [F1354670, F1354670, F1354670, F1354670, F1354670]
    // pickerArr returns all the ones created (not just 'F1354670') and works great.

    //this array needs to be what is shown on the tableView
    AllFormulas.tableArr = [] as? [SavedRun] ?? []

    // but.. I think doing it this way is acutally saving F1354670 into 'SavedRun'
    // which causes tableArr array to show them aswell 
    }

}

как мне сделать формулы похожими на базу данных и не показывать в tableArr, пока они не выбраны из pickerArr.

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...