如何让 UITableView 的 headerView跟随 cell一起滚动

                                                         如何让 UITableView 的 headerView跟随 cell一起滚动

 

        在我们利用 UITableView 展示我们的内容的时候,我需要在顶部放一个不同于一般的cell的 界面,这个界面比较独特。

 

        1。 所以我就把它 作为一个section的 headerView。

 

        也就是在函数:

        - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

 

        里面返回 这个UIView。

 

 

        但是,由于这个UIView占的空间很大,基本占用整个屏幕的高度,而滚动tableView的时候,只滚动cell的内容,而这个section的

headerView却不跟着滚动。

 

 

        后面,我想出了方法2。

 

 

       2。  设置 tableView的 style为  UITableViewStyleGrouped,然后让

          - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

       返回1。

 

        这样确实可以让 headerView ,在滚动tableView的时候,跟随着cell的内容一起滚动。但是,我发现,下面的cell都被加上了边框,

        而且cell的水平显示范围变窄了。

 

        所以尝试了方法3。

 

 

 

       3。  将UIView设置为  整个tableView的headerView,而不是 section 0的headerView

 

              self.tableView.tableHeaderView=header;

 

             这样,就可以完美的满足 headerView跟随cell的内容一起滚动的要求拉。

 

 

 

     结论:设置 UIView为  tableView的tableHeaderView即可实现 headerView跟随tableView一起滚动的效果。

 


你可能感兴趣的:(iphone/object-c)