【发布时间】:2016-04-06 12:54:19
【问题描述】:
我有一个垂直的、启用分页的滚动视图,有两页,我想在首页显示状态栏,而不是在底页。
我尝试使用 UIScrollViewDelegate 方法在视图完成滚动时显示/隐藏状态栏:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
// top page
if (scrollView.contentOffset.y == 0){
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
[self.delegate messagesActive:self];
}
// bottom page
else if (scrollView.contentOffset.y == self.view.frame.size.height){
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
}
}
但每次我从底部页面滚动到顶部页面时,状态栏都会在我的页面视图上方创建自己的空间,并将视图向下推离屏幕。无论是否有淡入淡出动画,都会发生这种情况。
下一个屏幕触摸会以某种方式强制视图通过滑动动画进行自我纠正:
如何让状态栏立即覆盖我的视图,而不是在其上方扩展空间?
【问题讨论】:
标签: ios uiscrollview ios9