J'essaie d'enregistrer une valeur de clic de bouton comme vrai ou faux dans la persistance. Si c'est le cas, un bouton d'image de case cochée est affiché. Si elle est fausse, un bouton d'image non cochée est affiché. Initialement, une image de boîte non cochée est affichée. Je suis en mesure de faire fonctionner cette fonctionnalité, mais j'ai de la difficulté à comprendre comment la faire persister lorsque je passe à un autre onglet, ou fermer et ouvrir l'application.Bouton Enregistrer cliquer sur une valeur booléenne persistante
import UIKit
class CurrentGoalViewController: UIViewController {
var uncheckedBox = UIImage(named: "checkbox")
var checkedBox = UIImage(named: "checkedbox")
var isboxclicked: Bool!
Ceci est la fonction de case à cocher qui se produit lorsque vous cliquez dessus. J'ai mis le bouton de la boîte pour être faux lors du chargement, de sorte que le bouton de la boîte est décochée en voyant cet écran.
override func viewDidLoad() {
super.viewDidLoad()
isboxclicked = false
}
Vous obtenez à cet écran en cochant la case d'un autre écran qui est un tableview dynamique, où chaque mot segues à son propre écran avec sa propre case à cocher (c'est un objectif application de maintien). Fondamentalement, je lis beaucoup sur la persistance et je suis confus sur la façon d'enregistrer l'état du bouton de sorte que lorsque vous vous éloignez de l'écran ou redémarrez l'application, il est toujours là. Toute aide serait appréciée Merci.
solution
Dans la fonction d'action de clic
let defaults = UserDefaults.standard
defaults.set(isboxclicked, forKey:"checkboxstatus")
Dans viewWillAppear
isboxclicked = defaults.bool(forKey: "checkboxstatus")
if isboxclicked == true {
uncheckBox.setImage(checkedBox, for: .normal)
}
Copie possible de [Comment stocker les données persistantes sur mon application iOS à l'aide de Swift?] (Http://stackoverflow.com/questions/35762561/how-do-i-store-persistent-data-on-my- ios-app-using-swift) – shallowThought