2017-08-14 103 views
0

我一直在試圖爲用戶註冊表創建一個UIScrollView,但沒有成功。我正在使用自動佈局,並且滾動視圖內的所有字段都是靜態的。由於通常模糊的高度問題,我在滾動視圖中添加了一個UIView,將約束設置爲滾動視圖的邊界並居中對齊。之後,我在故事板中添加了內容視圖中的所有字段。帶有內容視圖的UIScrollView

內容字段的設置與您期望的一樣,但是當我到達最低字段並將底部約束設置到內容視圖的底部時,所有內容都會中斷。

我被Xcode要求設置一些視圖的優先級,當我這樣做時,內容視圖大小保持不變,視圖縮小。

我試圖不通過代碼放置最後一個底部約束和調整內容視圖的大小,但高度不是應該調整大小。

我正在尋找一個很好的解決方案,在故事板和自動佈局中做到這一點。

enter image description here

更新:我添加了一個底部約束具有低優先級,但內容滾動視圖並沒有擴張,以顯示所有字段。

enter image description here

+0

我已經回答瞭如何在滾動視圖中設置約束。請檢查在這裏:https://stackoverflow.com/questions/42701165/scroll-view-not-scrolling-vertically/42701988#42701988 –

+1

你可以使用表視圖 –

+0

我想表格視圖會很容易爲這種特殊情況,但我正在使用scrollview尋找一個面向未來的解決方案。 – Macaret

回答

1

您正在使用自動佈局,使內容畫面的大小由約束決定的。按照下面的步驟,以提供適當的限制:

  1. 拖動滾動視圖主視圖中,並提供最佳的約束,底部,前緣和後緣與超級視圖(主視圖)作爲 每截圖對齊。

enter image description here

  • 以查看其中將包含內部滾動查看內容並拖動。和提供的約束中心X,中心Y,上,下, 前導和在對準與滾動型尾隨按照截圖
  • enter image description here

  • 將所有元素放在內容視圖中,這是滾動視圖的子視圖,並提供相對於上面的元素的頂部約束,以使元素之間具有相等的空間(例如,標籤,按鈕等) (確保您提供了必填項X位置約束)

  • 最後一個元素是「註冊帳戶」按鈕確認您提供最約束相對於國家和約束相對底部到 上海華盈(內容視圖),並改變頂部或底部 約束按截圖的優先級,否則給出錯誤。

  • enter image description here

    +0

    感謝您提供非常詳細的建議,但實際上並不成功。我做錯了什麼,也許我應該從頭開始......我爲我的問題附上了另一張圖片。 – Macaret

    +0

    元素的約束可能有問題。因爲它以這種方式工作,所以我可以滾動查看更多內容。你應該從頭開始適當的限制。 –

    0
    1. 添加&設置滾動型(UIScrollView中) enter image description here

    2. 添加&集內容查看(的UIView)與子視圖

    !設定內容查看寬度等於查看寬度

    enter image description here

  • 設置所有子視圖約束
  • 視圖1應該連接到的內容查看 enter image description here

  • 頂端View4應該綁定到ContentView的底部 enter image description here

  • 所有子視圖(視圖1,視圖2,視圖3,視圖4 ...)必須具有彼此之間的高度和距離

  • P.在你的情況下,如果iOS> 9.0,你可以用UIStackView替換ContentView