IOS中的自動布局

來源:互聯網
上載者:User

標籤:

Autolayout是一種“自動布局”技術,專門用來布局UI介面Autolayout能很輕鬆地解決螢幕適配問題Autolayout的兩條核心概念:  >1 參照:通過參照其他控制項或父控制項來設定當前控制項地位置和大小  >2 約束Constraints(規則):通過添加約束限制控制項地位置和大小  代碼實現 Autolayout 的步驟: 1. 利用NSLayoutConstraint類建立具體的約束對象    2. 添加約束對象到相應的view上- (void)addConstraint:(NSLayoutConstraint *)constraint;- (void)addConstraints:(NSArray *)constraints;
  1. 代碼實現Autolayout的注意點:
1》 要先禁止autoresizing功能,設定view的下面屬性為NOview.translatesAutoresizingMaskIntoConstraints = NO;2》 添加約束之前,一定要保證相關控制項都已經在各自的父控制項上3》不用再給view設定frame 一個NSLayoutConstraint對象就代表一個約束建立約束對象的常用方法
+(id)constraintWithItem:(id)view1 attribute:(NSLayoutAttribute)attr1 relatedBy:(NSLayoutRelation)relation toItem:(id)view2 attribute:(NSLayoutAttribute)attr2 multiplier:(CGFloat)multiplier constant:(CGFloat)c;

 

view1 :要約束的控制項attr1 :約束的類型(做怎樣的約束)relation :與參照控制項之間的關係view2 :參照的控制項attr2 :約束的類型(做怎樣的約束)multiplier :乘數c :常量       自動布局有個核心公式:        obj1.property1 =(obj2.property2 * multiplier)+ constant value

IOS中的自動布局

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.