2017-03-15 87 views
0

我在tapleviewcell中使用UIStepper,但我不知道如何在我的CoreData中保存步進值?如何將UIStepper保存到CoreData(swift 3)

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    let cell: StepperTableViewCell = tableView.dequeueReusableCell(withIdentifier: "cell") as! StepperTableViewCell 

    //stepper is your UIStepper reference from StepperTableViewCell 
    cell.stepper.tag = indexPath.row 
    cell.stepper.addTarget(self, action: #selector(stepperAction(sender:)), for: .valueChanged) 

    return cell 
} 
func stepperAction(sender: UIStepper) { 
    print("Stepper \(sender.tag) clicked. Its value \(sender.value)") 
} 
+0

你想做些什麼?只需保存sender.value?你真的需要核心數據嗎?也許UserDefaults也會很棒?核心數據看看https://www.raywenderlich.com/145809/getting-started-core-data-tutorial或這裏https://learnappdevelopment.com/ios-app-development-free/how-to -use-core-data-in-ios-10-swift-3 /或這裏https://medium.com/ios-geek-community/beginners-guide-to-core-data-in-swift-3-85292ef4edd #.gnbnvyows – kuzdu

+0

我在我的項目中使用CoreData,步進器是它的一部分。我知道如何將文本從UITextfield保存到CoreData,但我不知道如何在CoreData中保存IUStepper值 – Alex

+0

總之我不明白這個問題。 sender.value是雙精度或數字,不是嗎?核心數據支持雙倍。像字符串一樣保存它。看到這裏:http://stackoverflow.com/questions/37958530/using-double-in-core-data – kuzdu

回答

1

1.You在StepperTableViewCell創建一個變量,像這樣

var callBackStepper:((_ value:Double)->())? 

2.You創建您的StepperTableViewCell的IBAction爲(不要忘記對您的UI的參考) 這可能有一個看起來像這樣:

@IBAction func stepperTapped(sender: AnyObject) { 
    callBackStepper?(sender.value) 
} 
  • 在UIViewController其中的tableView你設置回調

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    let cell: StepperTableViewCell = tableView.dequeueReusableCell(withIdentifier: "cell") as! StepperTableViewCell 
    
    cell.callBackStepper = { value in 
        print("every time called when you use UIStepper \(value)") 
    } 
    return cell 
    } 
    
  • 這是未經測試,但它應該工作,請給反饋

    +0

    我還沒有測試它,但如何保存CoreData中每個單元格的步進值? – Alex

    +0

    我以爲你知道如何在價值時持續保存價值?你總是在回調中獲得價值。爲了保存它持久看看stackoverflow.com/questions/37958530/using-double-in-core-da ta 請先測試代碼! – kuzdu

    +0

    我測試了它,現在我有了價值,但是我在每個單元中都有價值,因爲我在我的項目中使用了tableview,因此如何使用每個單元格中的每個新步進值更新CoreData。 – Alex

    相關問題