Masonry

主要屬性

@property (nonatomic, strong, readonly) MASConstraint *left;//左側
@property (nonatomic, strong, readonly) MASConstraint *top;//上側
@property (nonatomic, strong, readonly) MASConstraint *right;//右側
@property (nonatomic, strong, readonly) MASConstraint *bottom;//下側
@property (nonatomic, strong, readonly) MASConstraint *leading;//首部
@property (nonatomic, strong, readonly) MASConstraint *trailing;//尾部
@property (nonatomic, strong, readonly) MASConstraint *width;//寬
@property (nonatomic, strong, readonly) MASConstraint *height;//高
@property (nonatomic, strong, readonly) MASConstraint *centerX;//橫向中點
@property (nonatomic, strong, readonly) MASConstraint *centerY;//縱向中點
@property (nonatomic, strong, readonly) MASConstraint *baseline;//文本基線

術語解釋

  • 必須先將視圖添加至父視圖([fatherView addSubview:View]),才能進行設置。
  • 在Masonry中,and,with都沒有具體操作,僅僅是為了提高程序的可讀性。
    make.left.and.top.mas_equalTo(20);
    等價于
    make.left.top.mas_equalTo(20);
  • 設置距離數值時,正數為向右的距離,負數為向左相距的距離。
  • 如果約束條件是數值或者結構體等類型,可以使用mas_equalTo進行包裝。
    一般將數值類型的約束用mas_equalTo,而相對于某個控件,或者某個控件的某個約束,使用equalTo,如:
    make.size.mas_equalTo(CGSizeMake(100, 100));
    make.center.equalTo(weakSelf.view);

約束函數

添加大小約束(大小為100 *100)
make.size.mas_equalTo(CGSizeMake(100, 100));

居中約束
make.center.equalTo(weakSelf.view);

與左邊界約束(本視圖左側與父視圖邊界相切為0)
make.left.equalTo(self.view).offset(0);

與其他控件寬度約束(本視圖的寬度與其余兩個視圖寬度相等)
make.width.equalTo(@[topView,bottomView]);

設置兩個控件之間的距離(頂部與上一個視圖底部相距150)
make.top.mas_equalTo(topView.mas_bottom).offset(150);

與左、下均相切
make.left.bottom.equalTo(self.view).offset(0);

設置寬和高的約束(均為150)
make.width.height.mas_equalTo(150);

設置兩個控件關聯(該控件與目標控件高度一致【縱坐標相等】)
make.centerY.mas_equalTo(imageView1);

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • iOS_autoLayout_Masonry 概述 Masonry是一個輕量級的布局框架與更好的包裝AutoLay...
    指尖的跳動閱讀 1,195評論 1 4
  • [置頂]iOS - Masonry使用中的一些整理 標簽:iOS資源大全iOS常用方法iOS學習資料Masonry...
    DreamMakerSky閱讀 3,199評論 0 4
  • (一)Masonry介紹 Masonry是一個輕量級的布局框架 擁有自己的描述語法 采用更優雅的鏈式語法封裝自動布...
    木易林1閱讀 2,392評論 0 3
  • Masonry是一個輕量級的布局框架,擁有自己的描述語法,采用更優雅的鏈式語法封裝自動布局,簡潔明了并具有高可讀性...
    3dcc6cf93bb5閱讀 1,833評論 0 1
  • 高友互動 當我還是小學生的時候,我夢想環游世界。 答應和我結伴同行的是小A。 還記得有一天下午只上了兩節課,我和小...
    老關中閱讀 448評論 0 0