2017-04-26 60 views
0

如何更改下面的關閉,使cell爲'弱'? :如何在Swift guard語句中定義一個弱變量

guard let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath as IndexPath) as? PlayerTableViewCell else { 
      fatalError("The dequeued cell is not an instance of PlayerTableViewCell") 
     } 

我相信有一個簡單的方法來實現這一點,但我一直無法確定正確的方式來處理這個。

感謝

+4

爲什麼你需要在你的'cellForRowAt'方法中對單元的弱引用? – rmaddy

+1

這只是一個'guard'聲明,而不是一個關閉表達式。 – Hamish

+0

@maddy - 我運行了檢查工具,發現這個語句沒有從內存中釋放'cell'對象,'cell'的許多實例都在內存中。我的研究表明我需要使細胞變弱,以便在使用後從內存釋放。 – Dave

回答

0

dequeueReusableCell重複的呼叫導致內存消耗問題,這使我覺得我有這樣的需要減弱很強的借鑑意義。

刪除這個錯誤的額外電話解決了我認爲需要修復的潛在問題。

相關問題