Latest 1.0.4
Homepage https://github.com/ruibox001/SWFBuilder
License MIT
Platforms ios 9.0, requires ARC
Frameworks UIKit, Foundation
Authors

License MIT 
CocoaPods 
Build Status


原理:主要实现原理的扩展UIKit和Foundation的常用属性和方法,封装成工具类组件,主要特点如下:

1链式调用的方式。

2标准命名规范。

3常用工具方法。

4Swift4的最新语法。


SWFBuilder快速编程组件特点详解

1链式调用的方式: 如下以UILabel的构建为例

    Label(makeRect(100, 100, 200, 30))
    .labelFont(fnt(14))
    .labelText("我的内容")
    .labelAlign(NSTextAlignment.center)
    .labelColor(UIColor.red)<br>.viewIntoView(self.view)

2标准命名规范

    UIKit控件初始化时都是以原来控件名称去掉UI开头的名称命名的:如:Label()、Button()、Image()
    Foundation初始化时都是以原来控件名称去掉NS开头的名称命名的:如:Array()、Dictionary()、Data()、Date()
    方法调用时都是以原来控件名称去掉UI/NS开头,第一个字母小写:如:labelFont()、labelAlign()、labelText(),其他控件一样

3常用工具方法
封装的工具主要有:

1) 对话框

  Alert()
  .setMsg("这里未做任何事")
  .addAction(name: "确定", style: UIAlertActionStyle.default, click: nil)
  .show()

2) GCD线程

    DoInConcurrent {
        Dlog("子线程并发: (Thread.current)")
    }

    DoInConcurrent {
        Dlog("子线程串行 (Thread.current)")
    }

    DoInMain {
        Dlog("主线程执行 (Thread.current)")
    }

    DoInMainAfter(3) {
        Dlog("延迟3秒后主线程执行 (Thread.current)")
    }

工具类

    颜色生成器
    color("0xffaadd")
    color("ffaadd")
    color("#ffaadd")
    color("random")
    color("ffaadd,0.3")

    UIFont生成器
    fnt(14)  //标准字体
    fbt(14)  //粗体
    fit(14)  //斜体

    makePoint(1, 1) //构建CGPoint
    makeSize(1, 1) //构建CGSize
    makeRect(1, 1, 1, 1) //构建CGRect
    makeInsets(1, 1, 1, 1) //构建UIEdgeInsets
    makeIndexPath(1, 1) //构建IndexPath
    makeNsIndexPath(1, 1) //构建NSIndexPath

    arc4randomTo(100)   //随机数0-100
    arc4random(10, 100) //随机数10-100
    。。。。。。。。。。。。。。。。

runtime方法

    objSwizzlingOrReplaceMethod(originSelector: #selector(originMothed), newSelector: #selector(newMothed)) //方法交换

富文本等等

4Swift4的最新语法

    Swift4在Swift3的基础算的上大改动,主要是把繁琐的语法更加简单化

安装

CocoaPods

    1. 在 `Podfile` 中添加 `pod 'SWFBuilder'`
    2. 执行 `pod install` 或 `pod update`

手动安装

    1. 下载`SWFBuilder`文件夹内的所有内容。
    2. 将`SWFBuilder`内的源文件添加(拖放)到你的工程。

Latest podspec

{
    "name": "SWFBuilder",
    "pod_target_xcconfig": {
        "OTHER_SWIFT_FLAGS[config=Release]": "-suppress-warnings"
    },
    "compiler_flags": "-swift-version 4.0",
    "version": "1.0.4",
    "authors": {
        "ruibox001": "[email protected]"
    },
    "homepage": "https://github.com/ruibox001/SWFBuilder",
    "summary": "SWFBuilder u5febu901fu7f16u7a0bu7ec4u4ef6",
    "source": {
        "git": "https://github.com/ruibox001/SWFBuilder.git",
        "tag": "v1.0.4"
    },
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "platforms": {
        "ios": "9.0"
    },
    "requires_arc": true,
    "source_files": "SWFBuilder/*.swift",
    "frameworks": [
        "UIKit",
        "Foundation"
    ]
}

Pin It on Pinterest

Share This