2016-12-22 5 views
2

В self.view есть subview (tempView), который я удаляю из супервизора, но когда я пытаюсь добавить его обратно, он не отображается в представлении. проверяя рамку, я обнаружил, что их фрейм верен, но вид не отображается. Ниже приведен код для удаления моего представления из супервизора и его добавления.Добавить Удалено Subview Swift 3 iOS

if(self.view.subviews.contains(self.tempView)) 
{ 
    self.tempView.removeFromSuperview() 
} 
else 
{ 
    self.view.addSubview(self.tempView) 
    self.view.bringSubview(toFront:self.tempView) 
    self.view.setNeedsLayout() 
    self.view.layoutIfNeeded() 
} 
+0

вам все еще нужно повторно установить рамку – SeanLintern88

+1

если удалить вид из надтаблицы затем U придется выделить и повторно создать его снова, чтобы добавить –

+0

Не требуется, если объект представления установлен на Сильный. Только если его слабый он потеряет свои свойства. – NKB

ответ

0

Try набор translatesAutoresizingMaskIntoConstraints = True

if(self.view.subviews.contains(self.tempView)) 
{ 
    self.tempView.removeFromSuperview() 
} 
else 
{ 
    self.tempView.translatesAutoresizingMaskIntoConstraints=true 
    self.view.addSubview(self.tempView) 
    self.view.bringSubview(toFront:self.tempView) 
} 
Смежные вопросы