常用三方库

常用的第三方

2019-12-30  本文已影响0人  woniu

一、HandyJSON

1、简要说明

HandyJSON是一个用于Swift语言中的JSON序列化/反序列化库。
与其他流行的Swift JSON库相比,HandyJSON的特点是,它支持纯swift类,使用也简单。它反序列化时(把JSON转换为Model)不要求Model从NSObject继承(因为它不是基于KVC机制),也不要求你为Model定义一个Mapping函数。只要你定义好Model类,声明它服从HandyJSON协议,HandyJSON就能自行以各个属性的属性名为Key,从JSON串中解析值。

2、HandyJSON原理

HandyJSON目前依赖于从Swift Runtime源码中推断的内存规则,任何变动我们将随时跟进。

序列化:就是将内存中的对象转换为字节序列,方便持久化到磁盘或者网络传输。
反序列化:就是将字节序列转换为内存中的对象。
HandyJSON使用文档

二、SnapKit

自动布局使用文章
SnapKit

三、GrowingTextView

自适应高度输入框。

四、Kingfisher

相当于OC的SDWebImage,图片加载的第三方。
Kingfisher使用

五、Alamofire

Alamofire使用

六、ESPullToRefresh

ESPullToRefresh是一个非常易于开发者使用的下拉刷新和加载更多组件。通过一个UIScrollView的扩展,可以轻松为UIScrollView的所有子类添加下拉刷新功能。 如果你想定制组件的UI样式,只要实现指定的协议方法即可。
特性:

七、SwiftTheme(换肤)

import SwiftTheme

// 创建一个枚举类型进行换肤
enum ChangeTheme:Int {
    
    case theme1 = 0;
    case theme2 = 1;
    case theme3 = 2;
    

    // 创建一个静态方法去换肤 去加载本地的plist文件
    static func swiftTheme(_ theme:ChangeTheme){
        switch theme {
            case .theme1:
                // 加载第一套主题文件
                ThemeManager.setTheme(plistName: "theme1", path: .mainBundle);
            case .theme2:
                ThemeManager.setTheme(plistName: "theme2", path: .mainBundle);
            case .theme3:
                ThemeManager.setTheme(plistName: "theme3", path: .mainBundle);
        }
    }
    
}

换肤demo

八、BMPlayer

BMPlayer是基于 AVPlayer 使用 Swift 封装的视频播放器,方便快速集成。
功能:

BMPlayer包含demo

九、JXBanner

JXBanner是banner位图的第三方,提供了多种风格款式,以供调用,我们可以根据需要来选择相应的款式。
JXBanner传送门

WeChat1d202bbc5880801a0b7efa95a3b93fa0.png
上一篇下一篇

猜你喜欢

热点阅读