我的視圖寬度將根據設備寬度而改變,但我想根據我不希望這是靜態的更改高度。如何根據寬度更改視圖的高度
我找不到任何可以處理此問題的約束條件。
我聽說長寬比可以做到這一點。但我試過了似乎並不奏效。
它是如何實現的?
我的視圖寬度將根據設備寬度而改變,但我想根據我不希望這是靜態的更改高度。如何根據寬度更改視圖的高度
我找不到任何可以處理此問題的約束條件。
我聽說長寬比可以做到這一點。但我試過了似乎並不奏效。
它是如何實現的?
使用寬高比的概念與AutoLayout來更新您的視圖相對於高度&寬度。使用乘數來更新寬高比。以下是縱橫比分配的快照以及如何更新它的乘數
乘數的邏輯: 1:1 =身高和圖像的寬度將保持相同 2:1 =您的寬度或高度相對於彼此是2倍,並創建一個矩形。這裏高度將是2x或寬度將是2x,取決於第一個項目和第二個項目的約束。
邏輯優先級: 優先級分配,當與另一個相同視圖約束衝突時,優先級爲特定約束。例如如果您已設置縱橫比爲1:1的視圖,且高度爲100,並且在主視圖中居中。現在,您還將左(邊距)/ Leading約束分配爲固定值,如200.在這種情況下,對於不同尺寸的屏幕寬度,居中對齊和/或主對齊和/或寬高比會互相沖突。此時,您需要根據您對設計調整的要求更新0-1000之間的優先級。
分享我的設計,我會給你確切的邏輯,如何使用這個概念
嘗試用以下簡單的方法..
1)給出Leading
和Trailing
約束像下面的圖像。
2)現在設置Top
或Bottom
或其他約束按照你的設計。對我來說,我已經解決了Vertically Center
。
3)現在設置的UIView
Height
按您的Ratio
您在設計要和選擇view
只是Drag and Drop
在同一view
,並選擇Aspect Ratio
後。 XCode
將自動獲得Ratio Constraint
。對於參考。見下圖。
與大家分享您的內容向我們展示了什麼是真正的用戶界面的樣子。添加你的方法,最後是你的預期輸出。 –
你想如何改變高度?你希望它與整個屏幕成正比嗎?你想要它與寬度的特定比例嗎? – Rikh
@Rikh - 你能解釋我怎麼做到這一點?因爲一些看法我希望前者,而另一種觀點我想要後者 – Shiva