qiitaで見つけたTodoアプリを作成している際に疑問に感じたのですが、delegate、datasourceを使用する際は
基本的に通知先を設定しなければならないものだと考えておりました。(○○○.○○○ = selfのように)
しかし、このアプリでは通知先を設定していない(?)にも関わらず、エラーも発生することなく正常に動きます。
これはどういうことなのでしょうか?
ご回答よろしくお願いします。
参考
https://qiita.com/pe-ta/items/8f474358d1dd789557f3
ViewController
swift
1// ViewController.swift 2import UIKit 3 4//classの継承を追加 5class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource { 6 7 //UITableView、numberOfRowsInSectionの追加(表示するcell数を決める) 8 func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 9 //戻り値の設定(表示するcell数) 10 return TodoKobetsunonakami.count 11 } 12 13 //UITableView、cellForRowAtの追加(表示するcellの中身を決める) 14 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 15 //変数を作る 16 let TodoCell : UITableViewCell = tableView.dequeueReusableCell(withIdentifier: "TodoCell", for: indexPath) 17 //変数の中身を作る 18 TodoCell.textLabel!.text = TodoKobetsunonakami[indexPath.row] 19 //戻り値の設定(表示する中身) 20 return TodoCell 21 } 22 23 24 //最初からあるコード 25 override func viewDidLoad() { 26 super.viewDidLoad() 27 //追加画面で入力した内容を取得する 28 if UserDefaults.standard.object(forKey: "TodoList") != nil { 29 TodoKobetsunonakami = UserDefaults.standard.object(forKey: "TodoList") as! [String] 30 } 31 } 32 33 //最初からあるコード 34 override func didReceiveMemoryWarning() { 35 super.didReceiveMemoryWarning() 36 } 37}
AddController
swift
1// AddController.swift 2import UIKit 3 4//変数の設置 5var TodoKobetsunonakami = [String]() 6 7class AddController: UIViewController { 8 9 //テキストフィールドの設定 10 @IBOutlet weak var TodoTextField: UITextField! 11 12 //追加ボタンの設定 13 @IBAction func TodoAddButten(_ sender: Any) { 14 //変数に入力内容を入れる 15 TodoKobetsunonakami.append(TodoTextField.text!) 16 //追加ボタンを押したらフィールドを空にする 17 TodoTextField.text = "" 18 //変数の中身をUDに追加 19 UserDefaults.standard.set( TodoKobetsunonakami, forKey: "TodoList" ) 20 } 21 22 //最初からあるコード 23 override func viewDidLoad() { 24 super.viewDidLoad() 25 } 26 27 //最初からあるコード 28 override func didReceiveMemoryWarning() { 29 super.didReceiveMemoryWarning() 30 } 31}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/22 20:02
2020/04/22 20:29