0

首先的後頁邊空白寬度變化約束防止查看,我必須提到我已在新項目中重複的約束和一直無法複製的問題。這個問題發生在我一直在努力的複雜故事板項目上。從對準上海華

爲了簡單起見,這是基本的問題:

我有一個視圖控制器內的默認查看內部的容器視圖。容器視圖對其超級視圖的頂部,底部和尾部邊緣有約束。在超視圖和容器視圖之間連接了兩個「等寬」約束。一個等於超級觀點,另一個與超級觀點成正比,在約束中有0.9乘數。

我有一個疊加在容器視圖上的按鈕,它在2個「相等/比例寬度」之間交替變化(爲了簡單起見,我目前已經刪除了視圖控制器中的所有其他對象,試圖隔離什麼導致問題...

當按鈕將「等寬」約束切換到0.9比例寬度約束時,它會將容器視圖從尾部邊緣(12點)推開,同時它也會縮小10%的容器視圖,根據需要。

我一直工作在這幾個小時,至今無果......出於絕望,我增加了一個額外的後緣約束上的開關當關閉比例寬度時,用額外的12點補償移位。默認的追蹤(到超視圖)約束被設置爲-20,因爲我將它增加到了-30,-31,-31.5,它越來越接近正確的看,但是當我把它固定在-32時,它又跳了起來,大約12到20點,離開邊緣的邊緣!我知道這不是一個很好的方法來解決這個問題,但我想提一下,以防萬一它可能是一個比我更知道什麼是導致問題的線索..線索

謝謝爲您提供的任何幫助!

UPDATE:

這個問題似乎是從嵌入容器視圖在VC一個衝突所產生的。嵌入式VC的高度是720,而它的容器是720 ...但是即使在我改變這些高度以匹配後,無論哪種方式,我都會遇到同樣的問題...

如果我刪除,問題似乎消失嵌入式VC,只是使用的容器視圖,但因爲我需要的嵌入式VC的含量,這是沒有辦法了......

最後一點,我在的地方按下一個按鈕它改變了一個類似的方法嵌入式VC的高度,但沒有問題..

回答

0

我解決了!

因此,正如我在更新中所懷疑的那樣,問題源於容器視圖和嵌入式視圖控制器之間的約束不同步。在容器視圖中,如上所述,超級視圖的後邊緣有一個約束,而對於我用按鈕切換的寬度有2個約束。嵌入視圖控制器的視圖對它的超視圖有一個主要的約束。一旦我將其刪除並將其切換爲尾部視圖,問題就解決了!獲得的經驗教訓:如果要改變具有多個寬度或高度約束的容器視圖,請確保在容器視圖和嵌入視圖的內容中具有相同的邊約束(y軸的頂部或底部,導向或追蹤x軸)。

0

我以前遇到類似的約束問題,沒有看到故事板,我不能指出確切的原因,但您可以嘗試以下操作:

  • 仔細檢查你的約束是否連接到你的代碼,即使它們不是這些代碼將編譯和運行,但沒有效果。
  • 注意自動佈局破壞約束的日誌,可能存在另一個約束,使您的視圖保持原位,導致新激活的破壞。

如果兩者都不是原因,也檢查按鈕是否調用正確的操作。在任何情況下,如果我的提示根本沒有任何幫助,您可能需要提供更多信息或屏幕截圖來顯示視圖,並且這是從我的最後更好地理解您的問題的限制因素。