2017-02-26 60 views
1

在Android中,如果我們嘗試將去掉以使視圖可見,則視圖佔用的空間將被下面的視圖佔據。Android VIEW GONE等效於ios

如果我們將不可見賦予視圖的可見性,視圖佔用的空間將被隱藏,空間仍然存在。

那麼如何在iOS中做到這一點?

如何在iOS Autolayout中執行此操作?

是否有可能我們可以通過模仿不見了

我很困惑,如何讓它成爲可能?

ofcourse我可以將視圖的框架更改爲下一個視圖的框架,但我無法對所有下面的視圖執行此操作......因爲它也涉及到自動佈局約束。

幫我解決這個問題?

+0

或許你可以嘗試設置其高度寬度設爲0? –

+0

是的,在某些情況下,只需將高度設置爲零。實際的答案是在iOS中沒有相應的內容。請注意,在**開發時間**,您可以使用評價者愚蠢的「已安裝」按鈕(谷歌或在故事板上查找它)。這個功能正是你想要的,但是在iOS中沒有*這種實際的UIKit運行時功能,沒有。 – Fattie

+0

我沒有看到任何理由來解決這個問題,這是一個很好的問題。 – Fattie

回答

2

嘗試改變視圖高約束爲0,這樣依賴於這一個其它視圖應的Android線性佈局像

更新1

距離Ios 9.0 UIStackView可用其作用相同的作爲android中的LinearLayout。爲了使這一點,你可以選擇在Interface Builder 2組或更多的意見,並在底部,你可以單擊堆棧視圖按鈕:

enter image description here

+0

我聽不懂......你能解釋一下嗎?比如在視圖或約束中選擇什麼選項,以及在哪裏選擇高度隱藏0 – Appu

+1

您可以將高度約束添加到需要隱藏的視圖,而不是將該約束綁定到viewController(控制+拖動),並且當您想要使視圖消失只是發送該約束的常量爲0 –

+0

@Appu如果你不想再次顯示視圖,你可以從視圖中刪除,在你想刪除的視圖中使用removeFromSuperview()方法 –