- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
static NSString *HeaderIdentifier = @"header";
headerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:HeaderIdentifier];
if ( headerView == nil)
{
headerView = [[UITableViewHeaderFooterView alloc] initWithReuseIdentifier:HeaderIdentifier];
............
}
这样定义以后,在调用reloadData后发现还是全部是新建的headerView,没有一个重用的。
怎么解释?
{
static NSString *HeaderIdentifier = @"header";
headerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:HeaderIdentifier];
if ( headerView == nil)
{
headerView = [[UITableViewHeaderFooterView alloc] initWithReuseIdentifier:HeaderIdentifier];
............
}
这样定义以后,在调用reloadData后发现还是全部是新建的headerView,没有一个重用的。
怎么解释?
reloadData情况比较特殊,如果你的数据模型被改变过,自然之前的cell 是不能用了,所以肯定会重画,如果模型没有变化的话可能会重用到,ios已经优化了很好了
屏幕上有几个header可见?