0
我正在製作一個基本的健身應用程序,並在其中有一個食物日記,用於跟蹤您每天所吃的食物。我有一個模式彈出(下圖),顯示您何時點擊「添加食物」。當按下「Save to Food Diary」按鈕時,我無法從模式彈出框中插入行。我還試圖將卡路里標籤更新爲用戶當天積累的當前卡路里。繼承人的代碼,我到目前爲止:使用模式彈出式菜單插入行到tableView
class PopupVC: UIViewController {
var section: Int?
var caloriesLabel = " "
var tableData: [String] = [""]
let foodDiary = FoodDiary()
var caloriesCell = caloriesForDiary()
@IBOutlet weak var foodTimeLabel: UILabel!
@IBOutlet weak var foodPopup2: UIView!
@IBOutlet weak var foodPopUp: UIView!
@IBOutlet weak var inputFood: UITextField!
@IBOutlet weak var inputCals: UITextField!
@IBAction func saveToDiary(_ sender: Any) {
if (inputFood.text?.isEmpty)! || (inputCals.text?.isEmpty)! {
return
}
caloriesLabel = foodDiary.testVariable
tableData.append(inputFood.text!)
foodDiary.tableView.beginUpdates()
foodDiary.tableView.insertRows(at: [IndexPath.init(row: (tableData.count) - 1, section: section!)], with: .automatic)
foodDiary.tableView.endUpdates()
dismiss(animated: true, completion: nil)
}
基本上我想用我的PopUpVC更新我FoodDiaryVC,我努力通過兩個控制器之間的數據插入行並更新我的卡路里標籤。希望這被解釋得足夠好!
聽起來不錯,現在試試吧!快速的問題,我保持insertRows方法在我的「保存到日記」功能?或者我在我的foodDiaryVC中使用它? – thelegendary3
所有的數據內容都應該在同一個地方完成,所以在foodDiaryVC中。您的彈出窗口應該只收集數據以創建該行,並讓您的DiaryVC執行此操作 – CZ54
非常感謝!有效!我知道委託方法是要走的路,再次感謝! – thelegendary3