UIScrollView在AutoLayout下的滚动问题
使用Storyboard编写UI,设置支持AutoLayout.
在其中的一个场景上,添加一个UIScrollView,在对应的代码里增加
- (void)viewDidLoad { [super viewDidLoad]; self.scrollView.contentSize = CGSizeMake(445, 60); }
调试,发现内容能显示,但是无法滚动。
经过网上搜索,发现是AutoLayout导致的问题。在支持AutoLayout后,系统会在ViewDidLoad之后,重新计算控件的一些值,导致上面设置的contentSize被重置为(0,0)了。
解决方案很简单:把上面的设置代码放到viewDidAppear上即可。
-(void) viewDidAppear:(BOOL)animated { self.scrollView.contentSize = CGSizeMake(445, 60); [super viewDidAppear:animated]; }
浙公网安备 33010602011771号