0
我有一個很大的方法,做一些加載和計算,因此它顯示一個活動指標視圖來通知他們應該等待的用戶。邏輯非常複雜,因此有4個地方的數據處理可能會中斷或返回(所有事情都是在關閉時完成的)。反正,我不想再重複這樣的代碼:Swift 3嵌套函數與閉包
DispatchQueue.main.async {
activityView.hide()
activityView.removeFromSuperview()
}
在4個地方,所以我計算過,我會寫一個嵌套函數:
func removeActivityView() {
DispatchQueue.main.async {
activityView.hide()
activityView.removeFromSuperview()
}
}
,但後來我意識到,在斯威夫特我也可以這樣做:
let removeActivityView = {
DispatchQueue.main.async {
activityView.hide()
activityView.removeFromSuperview()
}
}
這正好用同樣的方式和不完全一樣但從用戶的角度。
那麼一種方法和另一種方法之間的實際區別是什麼?