将强引用转换为弱引用为self

时间:2016-12-16 17:09:45

标签: ios swift swift2 weak-references strong-references

如何将此转换为对自我的弱引用?

NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(MyViewController.handleMessage(_:)), name: "NewMessage", object: nil)

NSNotificationCenter.defaultCenter().removeObserver(self, name: "NewMessage", object: nil)

此外,一个相关的问题 - 视图控制器何时实际被销毁?我假设当您进出不同视图时,视图控制器仍然存活吗?即他们不会在viewDidDisappear上被销毁。

1 个答案:

答案 0 :(得分:0)

这是viewcontroller中的函数,它实际上离开了momory,所以在这里你可以删除观察者

                deinit {
                    // you code

                }

并且为了使自己的弱引用你可以使用

                weak var this = self