繁体   English   中英

未调用通知观察者选择器

[英]Notification observer selector not called

我有这个观察者

    override func viewDidLoad() {
        super.viewDidLoad()
        NotificationCenter.default.addObserver(self, selector: #selector(GetUserID(_:)), name: Notification.Name("UserID"), object: nil)
    }

和这个选择器功能

    @objc func GetUserID(_ notification: Notification){
        let User = notification.object as? String
        self.UserID = User
    }

而且我一直在 UserID 中获得 nil,即使我确定当我收到通知时它不是 nil 这让我相信选择器没有被调用

您可以通过以下方法获得观察者值

 let selectedIndex:[String: Int] = ["selectedIndex": 1]
                         //selectedindex = 0
                         // post a notification
            NotificationCenter.default.post(name: NSNotification.Name(rawValue: "SelectedSegment"), object: nil, userInfo: selectedIndex)



    NotificationCenter.default.addObserver(self, selector: #selector(self.changeSegmentControlIndex(notification:)), name: Notification.Name("SelectedSegment"), object: nil)

     @objc func changeSegmentControlIndex(notification: Notification) {
        
        if let selectedIndex = notification.userInfo?["selectedIndex"] as? Int {
         // do something with your image
            print(selectedIndex)

         }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM