Ich habe versucht, die Farbe der Tasten meiner App zu ändern, indem ich die Farbe mithilfe der Schieberegler auswähle, um die Werte Rot, Grün, Blau und Alpha auszuwählen. Also habe ich eine Variable erstellt, die die vom Benutzer erstellte Farbe enthielt.CGColor nicht für den UIColor definiert, müssen zunächst Farbraum konvertieren. Swift 2, Xcode 7
In ViewController befinden sich die Schaltflächen. ChangeColors ist das RGB Sliders System.
import UIKit
import Foundation
var buttonColor = UIColor()
class ViewController: UIViewController {
@IBOutlet var tools: UIButton!
@IBOutlet var custom: UIButton!
@IBOutlet var support: UIButton!
@IBOutlet var donate: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
tools.backgroundColor = buttonColor
custom.backgroundColor = buttonColor
support.backgroundColor = buttonColor
donate.backgroundColor = buttonColor
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Die zweite ist der Code des RGB Slider System.
import Foundation
import UIKit
class ChangeColors: UIViewController {
@IBOutlet var Red: UISlider!
@IBOutlet var Green: UISlider!
@IBOutlet var Blue: UISlider!
@IBOutlet var Alpha: UISlider!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func preview(sender: AnyObject) {
let rVal = CGFloat(Red.value)
let gVal = CGFloat(Green.value)
let bVal = CGFloat(Blue.value)
let aVal = CGFloat(Alpha.value)
self.view.backgroundColor = UIColor(red: rVal, green: gVal, blue: bVal, alpha: aVal)
}
@IBAction func change(sender: AnyObject) {
let rVal = CGFloat(Red.value)
let gVal = CGFloat(Green.value)
let bVal = CGFloat(Blue.value)
let aVal = CGFloat(Alpha.value)
let color = UIColor(red: rVal, green: gVal, blue: bVal, alpha: aVal)
buttonColor = color
}
}
Aber die App stürzt ab, sobald sie zu öffnen und erhalten den folgenden Fehler:
App beenden aufgrund nicht abgefangene Ausnahme ‚NSInvalidArgumentException‘, Grund: ‚*** -CGColor nicht für die UIColor definiert; müssen zuerst den Farbraum konvertieren.
Ich brauche wirklich Hilfe. Danke.
Ändern Sie den Methodenparameter Typ von ANYOBJECT sicher UISlider –
Machen Sie im Bereich von 0 bis 1 –
Wert vorbei ist button? –