Notification的使用

情景描述:在PerVC 中根据access token 和 openID判断用户时候已经授权微信登录,如果 access token和 openID不存在,则未登录,请求微信登录,授权登录成功后,AppDelegate的回调方法中,写通知,因为在已经存在openID 和 access token 我们就会有另一套处理。 如果 access token和 openID存在,则表示已登录,已登录则首先请求后台的接口,如果后台存在则显示,如果不存在,则去请求微信的接口。

当一个controller与另一个controller无法建立联系,但是还需要建立联系的使用,我们可以使用通知,例如 A Controller完成操作 通知B Controller.

宏定义
let REFRESH_PERSONAL_CENTER = "refresh_personal_center"
在A中 :
      NotificationCenter.default.post(name: NSNotification.Name(rawValue: REFRESH_PERSONAL_CENTER), object: nil)
在B中:
单独的方法 deinit {
       NotificationCenter.default.removeObserver(self)
   }
ViewDidLoad中{
   NotificationCenter.default.addObserver(self, selector: #selector(refreshAccessTokenStatus), name: NSNotification.Name(rawValue: REFRESH_PERSONAL_CENTER), object: nil)
}
//B中知道A的状态后,执行对应的操作
func refreshAccessTokenStatus(){
       self.requestData()
       
   }

你可能感兴趣的:(Notification的使用)