Le menuView doit avoir la couleur par défaut pour tout le monde. Mais n'importe qui à partir des paramètres de l'application avec les curseurs RVB peut changer la couleur du menuView. Donc, je veux définir la couleur par défaut avec le jaune, et définir le curseur pour changer la couleur menuView. Et après le changement de couleur, cela peut être enregistrer.Lancer l'application avec la couleur par défaut
import UIKit
class ViewController: UIViewController {
let defaults = UserDefaults.standard
@IBOutlet weak var tableView: UITableView!
@IBOutlet weak var menuView: UIViewX!
var redval = Float()
var greenval = Float()
var blueval = Float()
@IBOutlet weak var NewMessage: UIButton!
@IBOutlet weak var Camera: UIButton!
@IBOutlet weak var NewPost: UIButton!
var tableData: [Model] = []
override func viewDidLoad() {
super.viewDidLoad()
self.menuView.backgroundColor = UIColor(red: CGFloat(redval), green: CGFloat(greenval), blue: CGFloat(blueval), alpha: 0.45)
}
}
Avec la chaîne
self.menuView.backgroundColor = UIColor(red: CGFloat(redval), green:
CGFloat(greenval), blue: CGFloat(blueval), alpha: 0.45)
Je peux changer la couleur par curseur RVB avec application, mais maintenant je veux imposte la couleur par défaut d'abord que cela peut être le changement.
code curseur pour changer la couleur
import UIKit
class ViewSettings: UIViewController {
@IBOutlet var redslider: UISlider!
@IBOutlet var greenslider: UISlider!
@IBOutlet var blueslider: UISlider!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func change(_ sender: AnyObject) {
self.performSegue(withIdentifier: "ChangeColor", sender: self)
}
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "ChangeColor" {
let destanitaion = segue.destination as! ViewController
destanitaion.redval = redslider.value
destanitaion.blueval = blueslider.value
destanitaion.greenval = greenslider.value
}
}
}
Une façon simple de le faire est de sauver chaque valeur rouge, vert, bleu comme un 'Double' dans' UserDefaults'. Puis extrayez chaque composant et reconstruisez le 'UIColor'. Vous pouvez créer une extension 'UserDefaults' pour rendre ce nettoyeur aussi. – Paolo
pouvez-vous me donner un exemple? la couleur que je veux imposer par défaut est #colorLiteral (rouge: 0.9966391622, vert: 1, bleu: 0.2095825737, alpha: 0.7946946448)/* # f2f0f0 */@Paolo –
UP @Paolo voir la mise à jour –