iOS XIB使用UIScrollView 設置 contentsize 無效

一問題描述

    今天作個需求,後臺獲取多個對象信息,若是某個對象爲nil,則不會顯示,當有多個返回對象的適合,界面不能容納全部的元素,廢話這麼多,總之是在xib 中使用 UIScrollView,可是問題是.m文件中設置contentsize 無效。
spa



二 問題分析

    xib 中勾選了autolayout選項,在autolayout下,iOS計算UIScrollView的contentsize的機制是略有不一樣。在autolayout中,會在viewDidAppear以前根據subview的constraint從新計算UIScrollView的contentsize。 當在viewdidload裏手動設置contentsize時,會再從新計算一次,把前面手動設置的值覆蓋掉。orm



三解決方法

    2.1 去除autolayout選項,本身手動設置contentsize

    2.2 若是要使用autolayout,則須要設置subview的constraint,讓系統自動根據constraint計算出contentsize

    2.3 在viewDidAppear裏面本身手動設置contentsize。

相關文章
相關標籤/搜索