2016-10-03 95 views
0

的Xcode 8 /斯威夫特3「預期宣言」錯誤

誰能告訴我爲什麼我得到這個「預期聲明」的錯誤?代表的使用完美地回答了我的最後一個問題,卻沒有得到這個錯誤。

谷歌搜索其他「預期聲明」的問題表明函數調用等在錯誤的地方,但我不認爲這是在這裏的情況 - 我已經嘗試將delegate?.loadFirstView(viewFromModel: firstView)放在一個單獨的函數,然後調用該函數,但我只是得到同樣的錯誤。請參見下面的截圖:

enter image description here

提前感謝!

P.S:下面是我使用代表完美工作的截圖。

enter image description here

三屏幕截圖,在一個單獨的函數委託調用:

enter image description here

+0

好吧,你做的一切都是錯誤的,去一些教程,並逐步檢查如何使用代表 –

+0

你的迴應是非常無益的。你如何看待我的代表爲我的第一個問題工作? – Rossco

+0

你不叫你的功能。看到在工作示例中,您正在調用計時器中的更新時鐘,您不能只是在課堂上打電話時,它應該運行?添加按鈕或在設置代理後啓動它 –

回答

0

你必須在課堂上放錯了地方的代碼(delegate?.loadFirstView(viewFromModel : firstView))。所以把它移到任何函數。

在您的工作screenshot中,代碼寫入updateClock()方法,因此工作沒有任何錯誤。

class modelClass{ 
      var delegate : LoadFirstViewProtocol? 
      let firstView = "First view loaded" 

      func testing()//Write here user defined method named 
      { 
       delegate?.loadFirstView(viewFromModel: firstView) 
      } 
     } 
+0

我試過了,但在調用函數的時候仍然出現同樣的錯誤。我會放第三張截圖。 – Rossco

+0

@Rossco,我添加了工作代碼。請檢查我的[更新的答案](http://stackoverflow.com/a/39837365/988169)。 – pkc456

+0

好的 - 我明白我現在做錯了什麼!謝謝pkc456! – Rossco