![](/img/trans.png)
[英]UITextField inside UIStackView Spacing Issue on width constraint
[英]UITableView inside a UIStackView height constraint issue
我們的應用程序有一個模式,其中許多屏幕在頂部有許多 UILabels,在它們下面有一個 UITableView,當存在時,它始終是頁面上的最后一個元素並擴展到屏幕底部。 因為頁面依賴於用戶特定的數據,所以我們不知道需要顯示多少標簽。 此外,在某些情況下,當 UITableView 中沒有要顯示的數據時,我們只是想隱藏它。
由於頁面的動態特性,我認為將所有 UILabels 和 UITableView 包裝在 UIStackView 中,然后在代碼中操作元素可見性(即 isHidden 屬性)是要走的路。 我將 UIStackView 的所有角固定到 SuperView 的角上,除了底部約束,我使底部約束大於或等於 UIStackView 底部約束。 這樣做是為了確保在 UITableView 被隱藏的情況下,UIStackView 不會占據整個屏幕,因為這樣做時它傾向於在屏幕中間顯示標簽。 基本上,如果 UITableView 可見,我希望 UIStackView 占據整個頁面,否則,只需要顯示標簽所需的空間。
AutoLayout 在確定 UITableView 的高度時有問題。 我可以想到兩種解決方案:
與 UITableView 不同,UILabels 似乎沒有與 UITableView 相同的高度限制問題。 我不是 100% 確定這是為什么,但我的猜測是 UILabels 提前知道它們的高度(可能通過 internalContentSize())但 UITableView 直到運行時才知道?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.