2017-03-21 52 views
-1

我目前正在Xcode的iOS應用程序(Swift)上工作,在學校工作。爲了突出在這個問題中提到的部分的背景:用戶瀏覽一系列頁面,基本上通過護理模擬對學生的表現進行評分。我需要在那裏有一個額外的選項卡,用戶可以驗證已輸入的評分,只需顯示他們在場景中完成的選擇數量即可。如何在沒有任何操作的情況下將標籤的值設置爲等於另一個值?

基本上我有一個帶有三個選項卡的選項卡式視圖控制器。第一個選項卡包含開關,用戶可以打開或關閉以添加或減去變量「WASH」。第二個選項卡是相同的,但它添加/減去變量「ID」。第三個選項卡是確認值。所以如果學生做2/3洗手和4/5檢查病人的身份證件,應該在這裏查看。

這裏基本上是我的代碼爲每一個開關

@IBOutlet weak var IDTOTAL: UILabel! 
@IBOutlet weak var CHECKID1: UISwitch!  
@IBAction func ID1(_ sender: UISwitch) { 
     if(CHECKID1.isOn) { 
      ID = ID + 1 
      total = total + 1 
      IDTOTAL.text = String(ID) 
     } 
     else { 
      ID = ID - 1 
      total = total - 1 
      IDTOTAL.text = String(ID) 
     } 

    } 

請注意,變量ID和總的全局變量。目前,IDTOTAL與交換機在同一個視圖控制器上,並且工作正常。我試圖在名爲「IDTOTAL2」的確認視圖控制器上添加另一個標籤,並嘗試將其設置爲「IDTOTAL2.text = String(ID)」的值,但是會引發錯誤。

如何讓最後一頁上的標籤更新其值而不需要用戶按下按鈕來啓動操作?

編輯:Please refer to this picture to see the error I am getting.

+2

爲什麼要按鈕?只需在用戶選擇開關時在事件處理程序中執行此操作?或者你可以在彙總控制器的'viewWillAppear'方法中完成。 –

+0

我想在用戶選擇開關時在事件處理程序中執行此操作,但這會引發錯誤。我不完全確定彙總控制器的含義。 –

+0

「通用變量」是什麼意思?全局變量爲 – Losiowaty

回答

0

您可以在第三個選項卡的viewDidAppear功能更新您的標籤,因爲它被觸發每次你從另一個選項卡切換到這一次。只需添加:

override func viewDidAppear(_ animated: Bool) { //update your labels here }

+1

這會引發錯誤,它與上面的錯誤相同。 :( –

相關問題