[文組班_作業 2–6] 實現水平捲動的 scroll view
滾動視圖(scroll view)是用來瀏覽無法在整個畫面容下的其他內容。
水平捲動的 scroll view
Step1:在 Assets.xcassets 加入需要的圖片
Step2:在畫面上加入寬度等於螢幕寬度的 scroll view,並為其背景設定顏色
Step3:加入容納專輯圖片的 View
要想讓 scroll view 水平捲動,關鍵在於 scroll view 上放一個超過 scroll view 寬度的 view。這樣我們在向左 / 向右捲動的時候,就可以看到旁邊下一張圖片。
然而將東西加到超出螢幕的區塊會有點難度,因為我們看不到超出螢幕的區塊。因此以下我們將採用另一個做法,先將 View 加到左邊 Document Outline 的 Exit 下方。
加在 Exit 下的 View 因為並沒有長在 Controller 的 View 底下,所以它還不會顯示在畫面上,它將變成一塊獨立的長方形,孤單地長在 controller 的外面。
Step4:設定 View 的大小
點選 View 後,切換到 Size inspector,將它的大小設為 600 * 150。
Step5:在 View 上加入準備好的 image view
Step6:將剛剛設計好的 View 加到 scroll view 上
從左邊的 Document Outline 點選 View,拖曳到右邊畫布的 scroll view 框框裡。(也可以拖曳到 Document Outline 的 scroll view 下)
Step7:調整 View 的 X 和 Y
設定 View 的 X 和 Y,讓它出現在 scroll view 上。
Step8:設定 scroll view 的 content size
我們希望 scroll view 能水平捲動,還有最後關鍵的一步要設定。
scroll view 的 content size 決定了它內容的大小,也就是它可以捲動的範圍。
content size 的寬度要大於 scroll view 的寬度才能水平捲動。(ps: content size 的高度大於 scroll view 的高度時將可上下捲動)
- Key Path 欄位輸入 contentSize,大小寫要一模一樣。
User Defined Runtime Attributes 可設定元件的 property,在此我們設定 scroll view 的 contentSize,透過它指定內容的大小。
- Type 欄位選擇 Size
- Value 欄位輸入 {600, 0}
第一個數字是寬度,第二個數字是高度。
切記捲動的關鍵在於 contentSize 的寬或高大於 scroll view 本身的寬或高。
我們將第一個數字設成容納專輯圖片的 View 的寬度 600,由於 600 超過 scroll view 本身的寬度 414,因此 scroll view 將能水平捲動。
由於我們不需上下捲動,因此我們只要將第二個數字設成小於 scroll view 本身的高度即可,在此我們設為 0。
Step9:將 View 的顏色設成 Clear Color
剛剛的 View 是白色的,請將它的顏色改成 Clear Color,如此才不會顯示白白的一塊。
如果不能捲動 ?
別心灰意冷,請檢查以下四個地方是否設定正確:
- scroll view 須設定 contentSize。
- scroll view 裝的 view 的寬度須超過 scroll view 的寬度。
- scroll view 裝的 view 的寬度須等於 contentSize 設定的寬度。
- contentSize 設定的寬度須大於 scroll view 本身的寬度。
結果