2017-12-31 142 views
1

Ich möchte die Ansicht eines View-Controllers halbtransparent machen. Dafür habe ich die Hintergrundfarbe in der viewDidLoad Methode so eingestellt.Transparente Ansicht Hintergrund wird schwarz

Wenn der View-Controller angezeigt wird, erscheint der Hintergrund so, wie ich ihn benötige, und dann wird er sofort schwarz.

enter image description here

Warum ist das passiert?

Dies ist der Code für die PopupViewController zeigt:

@IBAction func didTapShowButton(_ sender: UIButton) { 
    let navController = UINavigationController(rootViewController: PopupViewController()) 
    present(navController, animated: true, completion: nil) 
} 

ich here auch ein Demo-Projekt hochgeladen.

+0

Dies ist eine große Chance sein kann, eine individuelle Präsentation zu erstellen, die Ihnen eine Reihe von Design-Ideen geben können, die an die du vorher nicht gedacht hast. – slickdaddy

Antwort

3

Sie können die Flagge overCurrentContext (oder custom) hinzufügen, so dass Ihre present könnte etwas sein wie:

@IBAction func didTapShowButton(_ sender: UIButton) { 
    let navController = UINavigationController(rootViewController: PopupViewController()) 
    navController.modalPresentationStyle = .overCurrentContext 
    present(navController, animated: true, completion: nil) 
} 
+1

Ein anderes, das funktioniert, ist '.custom'. – dfd

Verwandte Themen