前言:
IOS的界面,分為:狀態欄、導航欄、主界面、底部狀態欄,
本篇講述主界面的相對布局,其它三個的操作,在其它文章獨立講述,
1、相對布局的基本語法:
基本方法定義:
//!相對當前UI的父視圖布局 XYLocation 決定相對的位置 -(UIView*)relate:(XYLocation)location v:(CGFloat)value; -(UIView*)relate:(XYLocation)location v:(CGFloat)value v2:(CGFloat)value2; -(UIView*)relate:(XYLocation)location v:(CGFloat)value v2:(CGFloat)value2 v3:(CGFloat)value3; -(UIView*)relate:(XYLocation)location v:(CGFloat)value v2:(CGFloat)value2 v3:(CGFloat)value3 v4:(CGFloat)value4;
XYLocation的列舉定義:
//!布局時的相對位置(取值的依據為:Left:1 Top:2 Ritht:3 Bottom:4 可以根據值來檢測所相對哪些位置) typedef NS_ENUM(NSUInteger,XYLocation) { Left = 1, LeftTop = 12, LeftTopRight = 123, LeftTopBottom = 124, LeftRight = 13, LeftBottom = 14, LeftBottomRight = 143, Top = 2, TopRight = 23, TopBottom = 24, TopRightBottom = 234, Right = 3, RightBottom = 34, Bottom = 4, //相對四邊 LeftTopRightBottom = 1234 };
2、布局示例:
布局的起始寫法:
如果是在XXXUIView中:以self開頭
如果是在XXXController中:以小寫sagit開頭(宏定義為self.view)
示例:

添加logo圖示的布局:
寫法一:相對左上右固定三個位置,
[[[sagit addImageView:@"logo" img:@"logo"] width:170 height:170] relate:LeftTopRight v:290 v2:200 v3:290];
寫法二:相對頂部位置,再居中,
[[[[sagit addImageView:@"logo" img:@"logo"] width:170 height:170] relate:Top v:200] toCenter:X];
3、定義添加控制元件時設定XY坐標(即默認為相對 LeftTop的相對布局)
如:添加logo圖片并定義寬高和初始坐標(相對父UI)
[[sagit addImageView:nil img:@"logo"] width:170 height:170 x:290 y:200];
和以下代碼功能一致:
[[[sagit addImageView:nil img:@"logo"] width:170 height:170] relate:LeftTop v:290 v2:200];
總結:
Sagit的布局比較簡單,只要看著標注好的圖寫代碼就可以了,
相對布局是相對于父UI、下一篇介紹同級UI的相對布局使用方法,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/1238.html
標籤:iOS
上一篇:Sagit.Framework For IOS 開發框架入門教程13:Tab界面控制器基類STTabController
下一篇:Sagit.Framework For IOS 自動布局教程:4、主界面:相對層級UIView布局,用block語法。
