2015-06-12 139 views
0

所以我在最新的Xcode的視圖控制器中使用UIScrollView。我在滾動視圖中有按鈕。當我運行應用程序時,滾動視圖消失。任何人都可以告訴我這是什麼原因以及自動佈局工具的工作原理?如何在滾動視圖中使用自動佈局?

+0

你有什麼限制嗎? – vacawama

+0

我正在使用引腳約束,但主要是嘗試和錯誤。你推薦什麼值限制。 –

+0

你想讓你的滾動視圖垂直滾動嗎? – vacawama

回答

1

這些步驟,enter image description here

  1. 採取滾動視圖,並設置限制(前置,頂部,底部)相對於父視圖。並設置一些背景顏色,以便它在運行時可見。

  2. 將UIButton放在滾動視圖上,然後爲滾動視圖設置按鈕(前導,尾隨,頂部)的約束,並設置按鈕的寬度和高度約束,以及一些背景顏色按鈕以便在運行時可見。

注:您內容的hirearchy應該像這個 - -parentView -ScrollView -button

請讓我知道如果有什麼不明確。

謝謝。

+0

是否有任何具體的值爲領先的尾隨?你如何添加「關於」的東西? –

+0

將其設置爲零,或者我需要顯示步驟,如何設置約束。樂於幫助。 –

+0

只要按照我的步驟,它會工作。 –

0

下面是一個用自動佈局設置滾動視圖的菜譜。

  1. 拖出一個scrollView並將其添加到您的ViewController。將其邊緣固定到其superView的邊緣。

  2. 拖出一個新的UIView並將其放入您的scrollView中。這將作爲scrollView的contentView,它是scrollView中唯一的頂層視圖。將其所有四個邊緣固定到scrollView的邊緣。注意:這不會設置scrollView的內容大小。

  3. 如果您希望scrollView只能垂直滾動,請將contentView的寬度設置爲scrollView的寬度。要做到這一點,請轉至文檔大綱視圖控制 -drag從contentView到scrollView並從彈出窗口中選擇等寬

  4. 要設置內容視圖的高度,可以設置高度約束,然後將其高度更改爲所需的值。如果需要滾動,該值需要大於scrollView的高度。另一種方式是確保contentView中的所有項都具有高度約束,並且全部彼此固定,最頂層的項固定在contentView的頂部,最下面的項固定到contentView的底部。如果你這樣做,那麼Auto Layout將能夠爲你計算contentView的高度。如果此總高度大於scrollView的高度,那麼您的contentView將滾動。

  5. 最後,添加按鈕。您現在可以在contentView中水平居中放置按鈕,因爲您在步驟3中建立了contentView的寬度。

+0

我一直在滾動視圖上直接放置按鈕。這是不正確的?這會使按鈕在不同的屏幕尺寸上適當縮放嗎? –

+0

應用約束後,滾動視圖消失。沒有內容出現,沒有滾動。 –

0

希望這將幫助其他人也

  1. 當你的autoLayout工作滾動視圖,該視圖層次結構應該像

enter image description here

的視圖(視圖1 )其中包含scrollView和視圖(View2),其中包含scrollView。

現在把約束的視圖1

enter image description here

是,從所有的側面固定它。

做了滾動同一步驟以及 視圖2 ,現在它將會給喜歡滾動內容大小模糊警告現在

,最重要一步是按CTRL並從查看2拖動到查看1,向下滾動彈出窗口並選擇等寬

enter image description here

現在,它會給你一個雄心勃勃的滾動視圖高度警戒,但是當你給適當限制到內部元素(視圖1內)也將消失。

相關問題