我的设置选项卡中有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
如果您需要更多信息,请随时评论您希望看到的内容,我会立即添加。提前谢谢!
答案 0 :(得分:0)
NSUserDefaults
可能不是一个好主意。我建议使用静态变量声明一个结构,一个可以在整个代码中共享的结构:
struct UserInterfaceSettings
{
static var myColor: UIColor! = UIColor.whiteColor()
}