簡體   English   中英

約束的奇怪行為,iOS8

[英]Strange behavior of constraints, iOS8

我對超級視圖有兩個基本看法。

在此處輸入圖片說明

我從代碼中添加的所有視圖和約束。 頂視圖的高度為H:| -0- [view] -0- |。 相同的vfl代碼具有底視圖。 接下來,頂視圖從頂部到頂部連接,第二個視圖從底部到頂部,第二個底部連接到底部。 代碼是V:| -0- [topView] -0- [secondView] -0- |。

第二個視圖的固有高度,因此兩個視圖的高度都取決於此值。 當我更改底視圖高度和動畫layoutIfNeed時,對我來說一切正常。 接下來,底視圖有一些子視圖。 底部是簡單的視圖容器,頂部是按鈕。 它們都附着在左/右,就像H:| -0- [view] -0- |。 底視圖也具有固有的高度,因此它們在垂直方向上像外部視圖一樣附加,而沒有(!)將按鈕附加到超級視圖的頂部(V:[button] -0- [secondView] -0- |)。 第二個視圖是從底部到底部固定的,但是當我設置該容器的高度變化的動畫時,其子視圖在iOS 8上處於頂部。

精細壞

視圖層次結構為

等級制度

約束:

H:|-0-[topView]-0-|
H:|-0-[bottomView]-0-|
V:|-0-[topView]-0-[bottomView(110)]-0-|

H:|-0-[buttonBackCamera]-0-|
H:|-0-[grayView]-0-|
V:[buttonBackCamera]-0-[grayView(85)]-0-| //here is constraint, that MUST attach grayView to bottom. 

我注意到,在調試時,該約束是附加的,活動的並且必須起作用,但是:(。

有什么想法嗎?

UPDATE

我已經在iOS 8.3上進行了檢查,一切都正常。

確保底視圖包含從引導到超級視圖,從尾隨到超級視圖和從底部到底部向導的約束。 如果您仍然遇到任何問題,那就去吧,

-(void)viewWillLayoutSubviews
{
  [self.view layoutIfneeded];
}

我認為我並沒有完全解決問題,但我建議您檢查所選的大小類以及每個啟用的約束的大小類。 在此處輸入圖片說明

暫無
暫無

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

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