一,bug出现的条件:
1.在同一个中xi b建立controller的view和它的tableHeaderView,
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[IQKeyboardManager sharedManager].enable = NO;
//这里赋值tableHeaderView
[self updateHeaderViewSite];
}
二,bug 出现的状况:
一进来,发现tableHeaderView没有满屏幕宽(其实是正常的,因为一开始设置的tableHeaderView就是比屏幕小),然后一会之后,突然闪了一下,就满屏了
三,bug的解决
写到viewWillAppear里就好了
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:YES];
[self setUpHeaderViewUI];
[self setUpUI];
[self updateHeaderViewSite];
}
四,这个bug的难点
- 时间短
- 容易误导,以为是布局没有设好,
- 小屏幕不容易出现这个bug(因为,tableHeaderView的初始宽比小屏幕大)
- 跟机器的硬件性能,缓存都有可能有关
5,最大的误导是既然原因跟“迟到”赋tableHeaderView有关,那么为什么一开始,居然有(也就是说没有“迟到”赋tableHeaderView,只是不满屏,难道跟xib的缓存有关)