2014-12-31 70 views
0

以外的所有子視圖我想刪除我的UIViewController的所有子視圖,除了兩個名爲toolBarOnetoolBarTwo的子視圖。我不知道我應該從哪裏開始。你有什麼建議?謝謝。刪除除名爲

回答

2

我不會這麼做,索尼建議由於幾個原因。

  1. 通過這樣做,您將刪除子視圖,同時使用相同的子視圖數組進行枚舉。

  2. 您可能還會刪除未明確添加到視圖中的佈局相關子視圖,即UILayoutGuide

相反,我建議在迭代包含原來的self.view.subviews陣列的複製和排除UILayoutSupport類型的任意子視圖一個單獨的數組:

var subviews = self.view.subviews 
for subview in subviews as [UIView] { 
    if subview != toolBarOne && subview != toolBarTwo && !(subview is UILayoutSupport) { 
     subview.removeFromSuperview() 
    } 
} 
0
for subView in view.subviews as [UIView] { 
     if subView != toolBarOne && subView != toolBarTwo { 
      subView.removeFromSuperview() 
     } 
    }