1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
override func viewDidLoad() { super.viewDidLoad() // burası uygulama açılır açılmaz anlamına geliyor. let storedName = UserDefaults.standard.object(forKey: "name") let storedBirthday = UserDefaults.standard.object(forKey: "birthday") //Casting - as? vs. as! force casting // Any if let newName = storedName as? String { // eğer storedname değeri tanımlanıp stringe çevriliyorsa... nameLabel.text = "Name: \(newName)" } if let newBirthday = storedBirthday as? String { birthdayLabel.text = "Birthday: \(newBirthday)" } } @IBAction func saveClicked(_ sender: Any) { UserDefaults.standard.set(nameTextField.text!, forKey: "name") //kaydetme UserDefaults.standard.set(birthdayTextField.text!, forKey: "birthday") //UserDefaults.standard.synchronize() nameLabel.text = "Name: \(nameTextField.text!)" birthdayLabel.text = "Birthday: \(birthdayTextField.text!)" } @IBAction func deleteClicked(_ sender: Any) { let storedName = UserDefaults.standard.object(forKey: "name") let storedBirthday = UserDefaults.standard.object(forKey: "birthday") // "" vs nil // nil değeri null diyebiliriz ama tam olarak değil. "" ve nil farklı. nilde hiçbişi yok. if (storedName as? String) != nil { // eğer böyle bir değer varsa UserDefaults.standard.removeObject(forKey: "name") // silme işlemi nameLabel.text = "Name: " } if (storedBirthday as? String) != nil { UserDefaults.standard.removeObject(forKey: "birthday") birthdayLabel.text = "Birthday: " } } |