簡體   English   中英

顯示警報控制器時,Scrollview高度會發生變化

[英]Scrollview Height Changes when Alert Controller is presented

我有一個帶圖像和文字的滾動視圖。 scrollview正確顯示封裝圖像和文本的高度。 當警報控制器出現在屏幕上並被解除時,滾動視圖的高度會發生變化。 有關為什么會發生這種情況以及如何解決這個問題

在此輸入圖像描述

在提醒警報之前查看heirarchy:

在此輸入圖像描述

提醒后:

在此輸入圖像描述

視圖在viewDidLoad之后添加並以編程方式使用約束:

let offlineView = OfflineView()
view.addSubview(offlineView)
offlineView.translatesAutoresizingMaskIntoConstraints = false
offlineView.topAnchor.constraint(equalTo: navBar.bottomAnchor, constant: 0).isActive = true
offlineView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true
offlineView.leftAnchor.constraint(equalTo: view.safeAreaLayoutGuide.leftAnchor, constant: 0).isActive = true
offlineView.rightAnchor.constraint(equalTo: view.safeAreaLayoutGuide.rightAnchor, constant: 0).isActive = true

OfflineView Xib約束:

在此輸入圖像描述

我在scrollview約束中的標簽是中心X軸和靜態寬度。

當我將標簽約束更改為導致superview = 45,跟蹤到superview> = 45時,錯誤不再持續。

我不知道為什么/如何發生這種情況,但它解決了我的問題..如果有人能解釋這種現象。

這種行為似乎很奇怪。 但是你可以試試下面的解決方案:

您正在直接將UIScrollView添加到主視圖中。 相反,您應該在主視圖上獲取一個容器視圖,然后將scrollView添加到該視圖,並將約束附加到該容器視圖。 並且該容器視圖應該具有主視圖的約束。 這將解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM