2014-10-04 75 views
0

我想要导航栏开始清除时的foursquare场地页面效果,然后当表格中的顶部单元格滚动显示时变得不透明。 Twitter应用程序在配置文件选项卡中具有类似的效果。当第一个单元格熄灭屏幕时,淡入淡出iPhone导航栏

这将如何实现?有没有办法知道细胞何时离开视野(与tableView:willDisplayCell:forRowAtIndexPath:相反)还是应该检查表格的滚动位置并在滚动位置处于特定值时进行更改?

谢谢

回答

0

试试这个代码,声明一个名为lastOffset的类型为CGFloat的ivar。

- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    CGFloat distance = lastOffset - scrollView.contentOffset.y; 
    lastOffset = scrollView.contentOffset.y; 

    CGFloat barHeight = self.navigationController.navigationBar.frame.size.height; 
    if (lastOffset > - barHeight) { 
     [UIView animateWithDuration:0.2 animations:^{ 
      self.navigationController.navigationBar.frame = CGRectOffset(self.navigationController.navigationBar.frame, 0.0f, distance); 
     }]; 
    } 
}