我正在将UIScrollView添加到UIViewControllers视图中.出于某种原因,在将滚动视图添加到视图并显示之间,contentOffset设置为{0,-64},64是状态栏的20加上导航栏的44点(我猜).下面是一些重现问题的代码和图像.
如何阻止iOS设置contentOffset?
- (void)viewDidLoad { [super viewDidLoad]; _scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(10,100,100)]; _scroll.backgroundColor = [UIColor greenColor]; _scroll.delegate = self; UIView *red = [[UIView alloc] initWithFrame:CGRectMake(0,10,10)]; red.backgroundColor = [UIColor redColor]; [_scroll addSubview:red]; [self.view addSubview:_scroll]; } - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; // outputs {0,-64} NSLog(@"%@",NsstringFromCGPoint(_scroll.contentOffset)); }
解决方法
将视图控制器上的automaticAdjustsScrollViewInsets设置为NO,否则它将在其根视图的第一个子视图上调整插件,该视图恰好是UIScrollView类.
更多关于iOS 7 Transition Guide的内容.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。