2017-07-18 3 views
0

Ist es möglich, eine UIView oben auf einer Containeransicht anzuzeigen?UIView oben auf einer Containeransicht

Ich möchte eine Ansicht mit ein paar Opazität Hintergrund hinzufügen, um meine Containeransicht zu sehen. Aber alles, was ich ausprobiert habe, hat entweder meine Containeransicht komplett verschwinden lassen oder ganz oben auf meiner Ansicht. Ich habe es über Storyboard und Code versucht.

Ich bin sicher, dass ich etwas vermisse.

+0

Sende deinen Code bitte. –

+0

Es ist auf meinem Storyboard. – stix

+0

Veröffentlichen Sie die XML-Datei von Ihrem Storyboard. –

Antwort

0

nur Ihre Sicht auf den Behälter

einfache Ansicht Eigenschaft des Containers Controller hinzufügen:

let viewYouWantToAddSubviewTo = parent?.view 

Detail:

import UIKit 

class CustomNavigationViewController: UINavigationController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     setupViews() 
    } 

    func setupViews() { 
     let layout = UICollectionViewFlowLayout() 
     let rootVC = HomeCollectionViewController(collectionViewLayout: layout) 
     viewControllers = [rootVC] 
     let v = UIView() 
     v.backgroundColor = UIColor.blue 
     v.layer.opacity = 0.4 
     v.translatesAutoresizingMaskIntoConstraints = false 

     // add your view to this view of the controller's container 
     let vv = (parent?.view)! 

     vv.addSubview(v) 

     // constraints for v 
     v.leftAnchor.constraint(equalTo: vv.leftAnchor).isActive = true 
     v.rightAnchor.constraint(equalTo: vv.rightAnchor).isActive = true 
     v.topAnchor.constraint(equalTo: vv.topAnchor).isActive = true 
     v.bottomAnchor.constraint(equalTo: vv.bottomAnchor).isActive = true 
    } 
} 

Ergebnis:

enter image description here