iOS 如何在 XIB 中拖拽 ScrollView 2

前言:

以前寫過一篇如何在 XIB 中拖拽 ScrollView。我以為從此再無后顧之憂。然而某天又被這個東西卡住了,就很僵硬,很煩。這次我做了一個動圖。這次應(yīng)該沒有任何問題了
很煩,隨著Xcode更新,UIScrollView 里面又多了兩個東西,在拖到XIB的時候,又特么開始報錯了。

第一步 關(guān)掉 Content Layout Guides

整活.png
第二步

把 ScrollView 拖到 XIB, 添加 5 個約束:
1.距離父視圖 頂部 Top 為 0
2.距離父視圖 左邊 Left 為 0
3.距離父視圖 右邊 Right 為 0
4.距離父視圖 底部 Bottom 為 0
5.在父視圖水平居中 Horizontally in Container

然后我們再拖 ScrollView 的子控件, 這個控件用來告訴滾動視圖內(nèi)容高度。我們拖一個 UIView 進來, 添加 6 個約束:
1.距離父視圖 頂部 Top 為 0
2.距離父視圖 左邊 Left 為 0
3.距離父視圖 右邊 Right 為 0
4.距離父視圖 底部 Bottom 為 998
5.自身高度 Heigh 200
6.在父視圖水平居中 Horizontally in Container

  1. 第4個約束, 這個底部距離值(998)可以隨便寫,值的大小會影響 ScrollView 是否可以滾動。后面會刪掉。998買不了吃虧,買不了上當,你還在等什么?
  2. 第5個約束 + 第4個約束 一起確定了滾動視圖的內(nèi)容高度。
  3. 第6個約束 + 第 2個約束 + 第3個約束 一起確定了滾動視圖的內(nèi)容寬度。

做好上面的兩大布局約束,基本上就可以玩了。

這時候,你可以再次勾選 上面的 Content Layout Guides,這時候是不會報錯的,當然,也可以不勾選。

創(chuàng)建滾動視圖并初始化.gif

第三步

添加第二個控件.gif

第四步

添加第三個控件.gif

第五步

現(xiàn)在要讓 ScrollView 的子控件來決定ScrollView 的內(nèi)容高度
第一步: 刪掉998約束,這樣 ScrollView 就無法確定內(nèi)容高度
第二步:給最后的綠色 View 添加一個距離頂部的約束
這樣子視圖就通過 自身的高度 + 距離頂部的距離 + 距離底部的距離 算出滾動視圖的內(nèi)容高度

滾動視圖高度適應(yīng).gif

第六步

修改內(nèi)容元素.gif

第七步

在有自建高度的情況下.gif

以前的拖拽研究
iOS - 如何在 XIB 中拖拽 ScrollView 1

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Demo 地址 https://github.com/gityuency/DemoCode 前言: 去年有個項目需...
    Yuency閱讀 2,877評論 6 2
  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明AGI閱讀 16,009評論 3 119
  • 最近看到了一個訪談,一個15歲的小女孩是某公司的CEO,她在節(jié)目中說了這樣一句話:“有的人說我年齡小,是小孩。但是...
    精英讀書會sq閱讀 1,000評論 0 50
  • 今天,真是有點倒霉,雖然很長時間內(nèi),我不愿意將“倒霉”二字用在自己身上, 畢竟,我太信奉吸引力法則和墨菲定律...
    熊在水上漂閱讀 204評論 0 1
  • 今天學校組織了猜燈謎活動,班主任趙老師選了幾個同學去參加,其中也包括我,我特別開心!我猜的燈籠的謎面是“言...
    瑩寶ying閱讀 257評論 0 0