2016-07-29 20 views
0

Ich habe Probleme mit dem Status UISwitch beim Start. Warum ist mein switch immer im on Zustand?Überprüfen UISwitch Status auf viewDidLoad

@IBOutlet weak var switch: UISwitch! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    if let sw = switch { 
     if sw.on { 
      print("on") 
     } else { 
      print("off") 
     } 
    } 
} 
+0

Haben Sie setzen es in Ihrem Storyboard? –

+0

Warum sind Sie wenn eine Kraft entfaltet optional? –

+0

@ AndréMuniz was meinst du im Storyboard? Der Status im Storyboard ist aktiviert. – Done

Antwort

1

Der Schalter wird sein, was auch immer Sie im Storyboard/Interface-Builder festgelegt haben. Wenn Sie sie im Storyboard aktivieren, wird sie beim Laden der App immer aktiviert und umgekehrt, wenn sie deaktiviert ist.

Wenn Sie wollen es auf aus, wenn Ihre Sicht erste Lasten (programmatisch), unabhängig davon, was im Drehbuch festgelegt ist, verwenden switch.on = false

Wenn Sie den Schalter der Zustand gespeichert werden sollen, wenn die App geschlossen ist , sollten Sie die Verwendung NSUserDefaults (here) Blick in

Hier ist ein Screenshot des im Storyboard gesetzt Zustand:

enter image description here

+0

Ich machte ein paar Experimente, fand heraus, wenn Sie in Aussicht stellen WillAppear es wird gut funktionieren, wie ich will. Nicht sicher warum... – Done