如何在不同的视图控制器上改变文本的颜色

时间:2016-06-06 20:16:07

标签: swift rgb cgfloat

我的设置选项卡中有3个RGB滑块,用于更改特定ViewController背景的颜色。我还希望它能改变文本标签的颜色。问题是,文本标签位于不同的视图控制器上。这意味着我可能不得不使用 NSUserDefaults 。文本标签是QOTD标签上的引用。

问题: 如何在不同的ViewController上更改文本标签的颜色,并保存该颜色直到更改?

import UIKit

class colorSliders: UIViewController {

@IBOutlet weak var redSlider: UISlider!
@IBOutlet weak var greenSlider: UISlider!
@IBOutlet weak var blueSlider: UISlider!

override func viewDidLoad() {
    super.viewDidLoad()


    updateBackgroundColor()
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
}

@IBAction func updateBackgroundColor() {
    let red = CGFloat(redSlider.value)
    let green = CGFloat(greenSlider.value)
    let blue = CGFloat(blueSlider.value)

    view.backgroundColor = UIColor(red: red, green: green, blue: blue, alpha: 1)
}




}

这是RGB滑块的代码。

带有引号的ViewController包含:

的UILabel! = quoteDisplay

如果您需要更多信息,请随时评论您希望看到的内容,我会立即添加。提前谢谢!

1 个答案:

答案 0 :(得分:0)

对于一小组特定值,

NSUserDefaults可能不是一个好主意。我建议使用静态变量声明一个结构,一个可以在整个代码中共享的结构:

struct UserInterfaceSettings
{
    static var myColor: UIColor! = UIColor.whiteColor()
}