iOS 7發布了,適配問題來了,開發者都忙起來了。
先記一個iOS7 的幾個特點:
1.坐標:以屏幕左上角為原點(iOS7以前在狀態欄或者導航條下)
2.UIScrollView(包括其子類,比如UITableView):會自動在頂部和底部預留一些空白(因為滾動經過半透明導航條或者tabbar下面,需要能隱約看到的效果),是否預留空白可以由UIViewController的
automaticallyAdjustsScrollViewInsets的這個屬性控制(默認YES,表示預留空白)。
上面這些只要你用iOS開發,就能發現。
最近遇到一個問題:
在項目中一個控制器中有一個瀑布流和一個table,發現瀑布流頂部預留空白,而table卻沒有,查找了許多資料,終於找到了原因所在:
一個控制器中,出現UIScrollView(包括其子類),必須是第一個添加到控制器的視圖上才會預留空白,這裡的第一個是相對於所有的子視圖,不僅僅是其他UIScrollView(包括其子類)。
那麼我遇到的問題如何解決呢,還是這個屬性automaticallyAdjustsScrollViewInsets,仔細看它的文檔說明,它說了,如果一個控制器中出現兩個以上的UIScrollView(包括其子類),這個屬性需要設置為NO.即不會預留空白,那麼這個控制器中所有的UIScrollView(包括其子類)都需要重新設置坐標。