2016-06-06 3 views
0

Ich habe 3 RGB-Schieberegler in meiner Registerkarte Einstellungen, die die Hintergrundfarbe dieses bestimmten ViewControllers ändern. Ich möchte auch, dass die Farbe eines Textlabels geändert wird. Die Sache ist, das Textlabel befindet sich auf einem anderen View-Controller. Was bedeutet, dass ich wahrscheinlich NSUserDefaults verwenden muss. Das Textlabel ist ein Zitat auf dem QOTD Tab.So ändern Sie die Farbe von Text in einer anderen Ansicht Controller

Problem: Wie ändere ich die Farbe einer Beschriftung auf einem anderen Viewcontroller und lassen die Farbe gespeichert werden, bis sie geändert?

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) 
} 




} 

Dies ist der Code für die RGB-Schieberegler.

Der Viewcontroller mit dem Zitat auf es enthält:

UILabel! = quoteDisplay

Wenn Sie weitere Informationen benötigen, zögern Sie nicht zu kommentieren, was Sie sehen möchten, und ich werde es sofort hinzufügen. Vielen Dank im Voraus!

+0

Wo ist der 'ViewController' mit dem' TextLabel' in Bezug auf Ihren Farbregler? Schiebt der Slider den 'viewController'? Oder drückt der 'viewController' die Schieberegler' viewController'? – NSGangster

+0

Es ist in der gleichen Tab-Bar-Controller wie die colorSliders.swift –

Antwort

0

NSUserDefaults ist wahrscheinlich keine gute Idee für eine kleine Reihe von spezifischen Werten. Ich schlage vor, eine Struktur mit statischen Variablen zu deklarieren, eine, die im gesamten Code geteilt werden kann:

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

Danke, aber wie spielt dies in meinem UILabel ändern? Gibt es keinen anderen Code, den ich einrichten muss, damit er funktioniert? –

Verwandte Themen