Skip to content

Latest commit

 

History

History
47 lines (33 loc) · 1.41 KB

列表的生命周期方法处理.md

File metadata and controls

47 lines (33 loc) · 1.41 KB

列表的生命周期方法处理

列表的自定义生命周期方法有哪些?

/**
 可选实现,列表将要显示的时候调用
 */
- (void)listWillAppear;

/**
 可选实现,列表显示的时候调用
 */
- (void)listDidAppear;

/**
 可选实现,列表将要消失的时候调用
 */
- (void)listWillDisappear;

/**
 可选实现,列表消失的时候调用
 */
- (void)listDidDisappear;

列表的生命周期方法触发时机

以当前显示的是A列表,右边是B列表,作为例子说明: 当用户从A慢慢滚动到B时,B显示了一点点的时候,就会触发A的listWillDisappear和B的listWillAppear

等用户完全滚动到B时(即B全部显示到界面,A全部消失),触发A的listDidDisappear和B的listDidAppear

如果列表是UIViewController类,系统的ViewWillAppear:等生命周期方法会触发吗?

系统的生命周期方法:

- (void)viewWillAppear:(BOOL)animated;
- (void)viewDidAppear:(BOOL)animated;
- (void)viewWillDisappear:(BOOL)animated;
- (void)viewDidDisappear:(BOOL)animated;

都会按照【列表的生命周期触发时机】说明中的顺序触发。但是自定义的- (void)listWillAppear;等生命周期方法也会调用,所以,如果列表是UIViewController类,只依赖于系统的生命周期方法即可。如果列表是UIView类,就依赖于自定义的生命周期方法即可。