推动Viewcontroller通过导航控制器,显示黑屏

Joe*_*Joe 4 uinavigationcontroller ios swift

我正在堆栈溢出中搜索这个问题,但无法得到问题的确切答案,我被困在它很长一段时间.我的问题是我试图通过导航控制器推送TestViewController.当我点击按钮时,TestViewController正在加载导航栏,而UIScreen是黑色的.

TestViewController的代码

import UIKit
class TestViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
    }   

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
    override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(true)
        navigationItem.title = "Test page"
    }
}
Run Code Online (Sandbox Code Playgroud)

按钮代码

@IBAction func secondButtonClicked(sender: AnyObject) {
    buttonPressedNumber = "Two Clicked"
    buttonTextColor = UIColor.magentaColor()
      let a = TestViewController()
      let b:UIViewController = a as UIViewController
      navigationController?.pushViewController(b, animated: false)
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Chi*_*tel 7

let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)
let resultViewController = storyBoard.instantiateViewControllerWithIdentifier("ViewController") as! ViewController
self.navigationController?.pushViewController(resultViewController, animated: true)
Run Code Online (Sandbox Code Playgroud)


Chr*_*Rex 6

您没有设置背景色你的看法

UIWindow 的默认颜色是黑色。因此,如果您没有在堆栈中设置任何其他背景颜色,它们都将是透明的。

没有为 UIViewController 的视图设置合适的背景颜色也会在过渡期间导致奇怪的视觉效果。


Key*_*ani 5

let nextVC = self.storyboard?.instantiateViewControllerWithIdentifier("storyboardID") as! viewController
self.navigationController?.pushViewController(nextVC, animated: true)
Run Code Online (Sandbox Code Playgroud)