016-通知各参数的意义

2017-02-18  本文已影响40人  紫荆秋雪_文

1、了解在发送通知时,通知方法中每个参数的作用

 /**
  通知方法中的参数
  1.监听对象
  2.监听方法
  3.监听的通知字符串
  4.发送通知的对象
      - 如果是 nil,监听所有的对象
      - 如果不为 nil,只监听 该对象发出的通知
 */

NotificationCenter.default.addObserver("监听通知的对象", selector: "接收到通知以后要执行的方法", name: "通知字符串", object: "发出该通知的对象")

1-1、最关键的差别是第四个参数

//
//  ViewController.swift
//  9-通知参数
//
//  Created by 紫荆秋雪 on 2017/2/18.
//  Copyright © 2017年 Revan. All rights reserved.
//

import UIKit

class ViewController: UIViewController {

    
    /// TextView
    @IBOutlet weak var TV1: UITextView!
    
    /// Textview
    @IBOutlet weak var TV2: UITextView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        /// 添加监听方法
        /**
         通知方法中的参数
         1.监听对象
         2.监听方法
         3.监听的通知字符串
         4.发送通知的对象
            - 如果是 nil,监听所有的对象
            - 如果不为 nil,只监听 该对象发出的通知
         */
        NotificationCenter.default.addObserver(self, selector: #selector(textViewChange), name: NSNotification.Name.UITextViewTextDidChange,
            object: nil)

    }
    
    func textViewChange(n: NSNotification) {
        
        print("监听textView输入内容")
        
    }
    
    //MARK: - 移除通知
    deinit {
        NotificationCenter.default.removeObserver(self)
    }

}

//
//  ViewController.swift
//  9-通知参数
//
//  Created by 紫荆秋雪 on 2017/2/18.
//  Copyright © 2017年 Revan. All rights reserved.
//

import UIKit

class ViewController: UIViewController {

    
    /// TextView
    @IBOutlet weak var TV1: UITextView!
    
    /// Textview
    @IBOutlet weak var TV2: UITextView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        /// 添加监听方法
        /**
         通知方法中的参数
         1.监听对象
         2.监听方法
         3.监听的通知字符串
         4.发送通知的对象
            - 如果是 nil,监听所有的对象
            - 如果不为 nil,只监听 该对象发出的通知
         */
        NotificationCenter.default.addObserver(self, selector: #selector(textViewChange), name: NSNotification.Name.UITextViewTextDidChange,
            object: TV1)

    }
    
    func textViewChange(n: NSNotification) {
        
        print("监听textView输入内容")
        
    }
    
    //MARK: - 移除通知
    deinit {
        NotificationCenter.default.removeObserver(self)
    }

}

上一篇下一篇

猜你喜欢

热点阅读