根据另一个视图的颜色更改视图颜色

时间:2016-02-15 16:04:33

标签: ios swift

我有一个用Swift编写的简单iOS应用程序,每次按下按钮时都会选择随机背景颜色。视图中有一个“Credits”按钮,用作另一个视图的模态segue。我将如何根据第一个视图中背景的颜色设置第二个视图的颜色?

3 个答案:

答案 0 :(得分:1)

您需要将颜色从第一个控制器传递到第二个控制器。下面是摘录。

 let destinationVC:ViewControllerClass = segue.destinationViewController as! ViewControllerClass
destinationVC.color = view.backgroundColor

答案 1 :(得分:1)

您可以这样存档:

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
    if (segue.identifier == "Load View") {
        // pass data to next view
       let viewController:ViewController = segue!.destinationViewController as  ViewController
       viewController.view.backgroundColor = self.view.backgroundColor   
    }
}

答案 2 :(得分:1)

您可以通过覆盖export class Data { constructor( public totalhousehold: number, public households: Array<number>, ) { } } 方法将一些参数传递给您正在呈现或推送的视图控制器:

prepareForSegue

您可以在Apple的UIViewController documentation找到更多关于override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { if let secondViewController = segue.destinationViewController as? MySecondViewControllerClass { secondViewController.view.backgroundColor = view.backgroundColor } } 的信息。