在xib(storyboard)中使用 UIScrollView, 默認是勾選了autolayout選項的,在autolayout下,iOS計算UIScrollView的contentsize的機制是略有不同。在autolayout中,會在viewDidAppear之前根據subview的constraint重新計算UIScrollView的contentsize。當在viewdidload里手動設置contentsize時,會再重新計算一次,把前面手動設置的值覆蓋掉。
所以,iOS7中,需在viewDidLayoutSubviews中設置scrollView.contentSize屬性。
iOS8及以上,只需要在viewDidAppear方法中設置就好了。