QXConsMaker 0.0.8

QXConsMaker 0.0.8

测试已测试
语言语言 SwiftSwift
许可证 Apache-2.0
发布最后发布2019年11月
SPM支持 SPM

labi3285 维护。



  • 作者
  • labi3285

QXConsMaker

Swift 布局的最简单方式,享受它吧!

基本构建方法

每一行都应该以 MAKE() 结尾,它返回创建并安装的布局约束:

A.LEFT.EQUAL(SuperV).OFFSET(20).MAKE()
A.RIGHT.EQUAL(SuperV).OFFSET(-20).MAKE()
A.TOP.EQUAL(SuperV).OFFSET(64 + 20).MAKE()
A.BOTTOM.EQUAL(SuperV).OFFSET(-20).MAKE()

B.CENTER_X.EQUAL(A).MAKE()
B.CENTER_Y.EQUAL(A).MAKE()
B.WIDTH.EQUAL(100).MAKE()
B.HEIGHT.EQUAL(B).WIDTH.MAKE()

T1.LEFT.EQUAL(A).OFFSET(10).MAKE()
T1.TOP.EQUAL(A).OFFSET(100).MAKE()

T2.LEFT.EQUAL(T1).RIGHT.OFFSET(10).MAKE()
T2.RIGHT.LESS_THAN_OR_EQUAL(A).OFFSET(-10).MAKE()
T2.CENTER_Y.EQUAL(T1).MAKE()

C.LEFT.EQUAL(A).MAKE()
C.WIDTH.EQUAL(A).RATIO(0.5).MAKE()
C.HEIGHT.EQUAL(100).MAKE()
C.TOP.EQUAL(B).BOTTOM.MAKE()

D.WIDTH.EQUAL(100).MAKE()
D.LEFT.EQUAL(A).RIGHT.RATIO(0.5).MAKE()
D.TOP.EQUAL(C).BOTTOM.MAKE()

通用多布局的包装包

每一行都应该以 MAKE() 结尾,它返回一个包含创建并安装的布局约束数组的实例:

Back.IN(SuperV).TOP(10).LEFT(10).BOTTOM(10).RIGHT(10).MAKE()
        
Container.IN(Back).SIZE(200, 200).CENTER.MAKE(scale)
        
A.IN(Container).LEFT.TOP.SIZE(30, 30).MAKE(scale)
B.IN(Container).LEFT.CENTER.SIZE(30, 30).MAKE(scale)
C.IN(Container).LEFT.BOTTOM.SIZE(30, 30).MAKE(scale)
        
D.IN(Container).RIGHT.TOP.SIZE(30, 30).MAKE(scale)
E.IN(Container).RIGHT.CENTER.SIZE(30, 30).MAKE(scale)
F.IN(Container).RIGHT.BOTTOM.SIZE(30, 30).MAKE(scale)
        
G.IN(Container).TOP.CENTER.SIZE(30, 30).MAKE(scale)
H.IN(Container).BOTTOM.CENTER.CENTER.SIZE(30, 30).MAKE(scale)
        
I.IN(Container).CENTER.SIZE(30, 30).MAKE(scale)

J.LEFT(Container).TOP.SIZE(30, 30).MAKE(scale)
K.LEFT(Container).CENTER.SIZE(30, 30).MAKE(scale)
L.LEFT(Container).BOTTOM.SIZE(30, 30).MAKE(scale)

M.RIGHT(Container).TOP.SIZE(30, 30).MAKE(scale)
N.RIGHT(Container).CENTER.SIZE(30, 30).MAKE(scale)
O.RIGHT(Container).BOTTOM.SIZE(30, 30).MAKE(scale)
        
P.TOP(Container).OFFSET(10).LEFT(10).SIZE(30, 30).MAKE(scale)
Q.TOP(Container).CENTER.OFFSET(10).SIZE(30, 30).MAKE(scale)
R.TOP(Container).OFFSET(10).RIGHT(10).SIZE(30, 30).MAKE(scale)
     S.BOTTOM(Container).OFFSET(10).LEFT(10).WIDTH(30).HEIGHT(30).MAKE(scale)
T.BOTTOM(Container).OFFSET(10).CENTER.SIZE(30, 30).MAKE(scale)
        U.BOTTOM(Container).OFFSET(10).RIGHT(10).WIDTH(30).HEIGHT(30).MAKE(scale)

其他函数

  1. 您可以获取每个限制条件并更改其常量
        sharp.CENTER_X.EQUAL(SuperV).MAKE()
        sharp.TOP.EQUAL(SuperV).OFFSET(100).MAKE()
        sharp.HEIGHT.EQUAL(100).MAKE()
        widthCons = sharp.WIDTH.EQUAL(10).MAKE()
        
        widthCons?.constant = CGFloat(100)

2.通过从视图中删除所有已安装的限制条件,您可以重新创建限制条件

        A!.REMOVE_CONSES()
        A!.CENTER_X.EQUAL(view).MAKE()
        A!.CENTER_Y.EQUAL(view).MAKE()
        A!.MAKE(W: 100, H: 100)

        // remake
        A!.REMOVE_CONSES()
        A!.CENTER_X.EQUAL(view).MAKE()
        A!.CENTER_Y.EQUAL(view).MAKE()
        A!.MAKE(W: 200, H: 200)

提交错误的最佳时机!祝您玩得开心!