Tak, jest to właściwy sposób sprawdzenia optional, nilczy objectForKeymetoda ma lub zwraca jakąkolwiek metodę wartości , AnyObject?która jest Implicit optional.
Więc jeśli userDefaults.objectForKey(kUSERID)ma jakąkolwiek wartość, niż szacuje true. jeśli userDefaults.objectForKey(kUSERID)ma nilwartość, do której się szacuje false.
Z szybkiego przewodnika programowania
Instrukcje if i wymuszone rozpakowywanie
Można użyć instrukcji if, aby sprawdzić, czy opcja opcjonalna zawiera wartość. Jeśli opcjonalny ma wartość, przyjmuje wartość true; jeśli nie ma żadnej wartości, przyjmuje wartość fałsz.
Teraz w symulatorach jest błąd, że po ustawieniu klucza userDefaultszawsze pozostają ustawione bez względu na to, czy usuniesz aplikację. Musisz zresetować symulator.
Zmień Simulator sprawdzić tę metodę przed ustawieniem klucz userDefaultslub wyjąć kluczyk userDefaults.removeObjectForKey(kUSERID)z userDefaults
nastąpi powrót NOurządzenia .Na to jest rozwiązane w iOS8 beta4.