/// 可选实现,列表将要显示的时候调用
@objc optional func listWillAppear()
/// 可选实现,列表显示的时候调用
@objc optional func listDidAppear()
/// 可选实现,列表将要消失的时候调用
@objc optional func listWillDisappear()
/// 可选实现,列表消失的时候调用
@objc optional func listDidDisappear()
以当前显示的是A列表,右边是B列表,作为例子说明:
当用户从A慢慢滚动到B时,B显示了一点点的时候,就会触发A的listWillDisappear
和B的listWillAppear
。
等用户完全滚动到B时(即B全部显示到界面,A全部消失),触发A的listDidDisappear
和B的listDidAppear
。
系统的生命周期方法:
override func viewWillAppear(_ animated: Bool)
override func viewDidAppear(_ animated: Bool)
override func viewWillDisappear(_ animated: Bool)
override func viewDidDisappear(_ animated: Bool)
都会按照【列表的生命周期触发时机】说明中的顺序触发。但是自定义的listWillAppear
等生命周期方法也会调用,所以,如果列表是UIViewController类,只依赖于系统的生命周期方法即可。如果列表是UIView类,就依赖于自定义的生命周期方法即可。