[英]Scrollview in 'present modally' view controller not working
我有一個視圖控制器,將以模態顯示,在VC中,我有一個scrollview。 但是,當我的搜索類型為“當前模態”時,添加滾動視圖通常似乎不起作用。 我讀過某個地方,必須將滾動視圖放在另一個視圖中才能正常工作。 這是我的視圖層次結構:
這些是我對視圖A的約束:
ScrollView約束:
ViewB約束:
在ViewB中,我還有另一個視圖,該視圖的上,左,右約束為0。 我也在代碼中設置了這個:
override func viewDidLayoutSubviews()
{
viewB.frame.size.height = 2000
scrollView.contentSize = viewB.frame.size
}
但是,scrollview仍然不滾動。 感謝任何可以提供幫助的人……在此問題上停留了一段時間。
問題是您已將ViewB約束賦予其包含的滾動視圖。 如果您要采用這種方法(我更喜歡),那很好。 但這意味着滾動視圖的contentSize
由ViewB的大小而不是contentSize
屬性確定。 因此,您的viewDidLayoutSubviews
代碼是無用的,您的第一步應該是將其丟棄。
現在那么,什么是 ViewB的大小? 不幸的是,它與滾動視圖的大小相同,因為給了ViewB寬度和高度限制,使其與滾動視圖的大小相同。 因此,沒有任何可滾動的內容。
解決方案是通過約束來完成您在代碼中嘗試執行的操作,即為ViewB設置一個固定為2000的高度約束,而不是您給定的高度約束。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.