Мне нужна помощь с моим маленьким проектом для университета. У меня есть два ViewControllers.
Первый - DietViewController
Второе - WaterBalanceViewController (используйте SPStorkController)
Мне нужно заполнить CircleProgressView в моем DietVC. ![DietVC](https://i.stack.imgur.com/KNwu2.png)
Когда я нажимаю Drink
->
@IBAction func drinkAction(_ sender: UIButton) {
let controller = WaterBalanceViewController()
let transitionDelegate = SPStorkTransitioningDelegate()
controller.transitioningDelegate = transitionDelegate
controller.modalPresentationStyle = .custom
transitionDelegate.customHeight = 620
transitionDelegate.showIndicator = false
self.present(controller, animated: true, completion: nil)
}
И открой SPStorkController - мой второй ВК
![secondVC](https://i.stack.imgur.com/xZCQA.png)
Далее, когда я нажимаю на кнопку Drink
в моем втором ВК, я должен сэкономить: сколько я только выпил. Например, вызовите эту переменную justDrunk
. В моем первом ВК у меня есть var currentAmountOfWater = Float()
Это значение, которое будет передано в CircleProgressView. Я пытаюсь сохранить:
@objc func pressButton(_ sender: UIButton){
print("Hello")
self.justDrunk = Float(textField.text!)!
let vc = DietViewController()
vc.currentAmountOfWater += justDrunk
vc.currentAmountOfWater += justDrunk
UserDefaults.standard.set(vc.currentAmountOfWater, forKey: "currentAmountOfWater")
print(UserDefaults.standard.float(forKey: "currentAmountOfWater"))
self.dismiss(animated: true, completion: nil)
}
Когда я пытаюсь распечатать, я вижу, что мое значение не сохраняется. Всегда печатается результат justDrunk
.
Затем я хочу использовать свой currentAmountOfWater
в моем первом виртуальном канале.
In viewDidLoad `var valueForWater = currentAmountOfWater / maxAmountOfWater
waterProgress.progressColor = UIColor(red: 0, green: 122/255, blue: 1, alpha: 1)
waterProgress.setProgressWithAnimation(duration: 1, value: valueForWater)
Пожалуйста, кто-то мне помогает. Как ввести данные в secondVC, передать данные в firsVC и отобразить все в CicrleProgressView. И, возможно, вы можете написать код, который будет сбрасывать currentAmountOfWater
на ноль каждые 24 часа.
Спасибо!