1、先添加一個view,y軸靠近導航控制器。
CGSize size = [UIScreen mainScreen].applicationFrame.size;
CGFloat x = 0;
//獲取導航控制器y軸的最大值
CGFloat y =CGRectGetMaxY(self.navigationController.navigationBar.frame);
CGFloat w = size.width;
CGFloat h = 40;
self.sv = [[SearchView alloc]initWithFrame:CGRectMake(x, y, w, h)];
UIWindow *window = [[[UIApplication sharedApplication] windows]lastObject];
[window addSubview:self.sv];
2、由於tableview繼承scrollview,可以使用下面的方法
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
//獲取滾動的偏移量
NSLog(@"%@",NSStringFromCGPoint(scrollView.contentOffset));
CGFloat y = scrollView.contentOffset.y;
if (y < -64) {
[self.sv setHidden:YES];
}
else{
[self.sv setHidden:NO];
}
}
這樣就可以實現頭部添加的view看上去不隨向上滾動的效果。