2016-12-22 20 views
2

self.viewにはスーパービューから削除しているサブビュー(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

あなたはスーパーからビューを削除した場合、あなたはまだ、その後Uがあれば、必要な – SeanLintern88

+1

に必要ビューのオブジェクトは[強]に設定されます。弱い場合にのみ、そのプロパティを失います。 –

+0

を未追加するには、もう一度それを割り当てて、リフレームする必要が再設定されたフレーム – NKB

答えて

0

試しセットtranslatesAutoresizingMaskIntoConstraints =真

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) 
} 
関連する問題