iOS自動化布局 AutoLayout約束優先順序

2021-09-02 14:02:09 字數 585 閱讀 6993

autolayout新增的約束中也有優先順序(priority),優先順序的數值1~1000,分為兩種情況:

當uilabel顯示的內容過長或太短,控制項就會被拉伸和壓縮,當我們不想讓控制項被拉伸壓縮時,就需要設定控制項的固有約束(intinsic content size)來實現我們的需求。固有約束分為兩種:

兩個label併排放置,左邊label根據內容自適應,右label距離左label中間有固定距離,右label距離右邊距有固定距離,在不設定優先順序的情況下,左label要麼被拉伸要麼被壓縮,如下圖

我們設定左邊label的抗壓縮優先順序和抗拉伸優先順序都大於右邊label,效果如圖

由於左邊label的抗壓縮和抗拉伸優先順序都高於右邊label,而且其他約束的優先順序(1000)也都高於右邊label的固有寬度優先順序,所以系統選擇拉伸或者壓縮了右邊的label,實現了我們的需求。

github位址

IOS 自動化測試

ps 文章現在僅限自學使用 測試工具 macaca github alibaba 倉庫 還有乙個自己的主站倉庫 一些文章 macaca 入門合集 自動化測試總結 自動化測試解放人力 macaca 原理分析 開源介紹 ios 真機測試 ci系統reliable 是分布式持續整合服務,可與 macac ...

iOS自動化打包

ios專案自動打包指令碼 1.指令碼自動打包 2.上傳到fir.im 3.傳送郵件給測試人員 需要安裝的相關指令軟體 1.python 2.7 2.xcode 3.fir.im指令 使用方法 1.安裝xcode 2.安裝fir.im的指令,安裝方法見 3.配置相關資訊 python ipa.py c...

iOS自動化打包

第一步 如果要發布到fir,需要安裝 終端執行gem install fir cli 第二步 如果沒有安裝過rvm,需要安裝rvm,在終端輸入rvm v命令檢視,如果列印出rvm command not found說明沒有安裝過rvm,如果能列印出rvm版本等資訊說明安裝過。如果沒有安裝過rvm可以...