[英]What happens with constraints when a view is begin to be hidden?
問題與此非常相似,但是我很有趣,當UIView更改為isHidden
值時會發生什么。
例如: | | | -[ViewA]-[ViewB]-[ViewC]- | | |
| | | -[ViewA]-[ViewB]-[ViewC]- | | |
在草稿上:
[X]
->視圖
|
和-
- >約束
在以下情況下會發生什么: ViewB.isHidden = true
如何在代碼中更正顯示/隱藏子視圖的句柄(沒有UIStackView
)? 我應該手動將約束設置為活動/非活動嗎?
通常,隱藏視圖(通過設置isHidden
)對布局沒有影響。 隱藏的視圖參與布局。 連接到視圖的所有約束仍將強制執行。 現在隱藏的視圖所占據的區域仍為其保留。
這很有用,因為它允許您將隱藏視圖用作“分隔符”來創建布局(在Interface Builder中),而這些布局是您以前無法創建的。 (在代碼中,您可以使用UILayoutGuide
代替隱藏視圖,但是IB不支持創建布局指南。)
UIStackView
與其他視圖不同。 UIStackView
觀察其每個已安排子視圖的isHidden
屬性。 當安排的子視圖的isHidden
更改時, UIStackView
更新約束以創建或刪除該子視圖使用的區域。
沒有其他視圖可以執行UIStackView
操作,因此沒有其他視圖在子視圖變為隱藏或可見時調整其子視圖的布局。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.