1. 程式人生 > >iOS UITableViewHeaderFooterView設置背景色為透明

iOS UITableViewHeaderFooterView設置背景色為透明

red col header 顏色 lai plain 找到 int 方法

給UITableViewHeaderFooterView設置背景色分2種情況
1.tableView在group模式下,UITableViewHeaderFooterView的背景色默認是透明的,此時如果要設置背景色只需要給contentView設置顏色即可

self.contentView.backgroundColor = [UIColor redColor];

2.tableView在plain模式下,這個時候UITableViewHeaderFooterView默認有個淺灰色背景,如果要讓背景色為clearColor,就不能直接設置self 和 self.contentView的顏色,經過測試發現,這樣設置是不會生效的,正確的方式可以通過下面方法來實現

-(void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section {
    if ([view isMemberOfClass:[UITableViewHeaderFooterView class]]) {
        ((UITableViewHeaderFooterView *)view).backgroundView.backgroundColor = [UIColor clearColor];
    }
}

註意isMemberOfClass和isKindOfClass的區別,目的是到這裏找到你需要的UITableViewHeaderFooterView並設置背景色為透明

iOS UITableViewHeaderFooterView設置背景色為透明