1.2.0
更新内容
- 新增移除指定尺寸后再进行适配的功能
- 开放
Config
配置,方便获取屏幕/设备的相关信息
使用
Swift
1、定义适配规则
struct Fit {
@WrappedSwiftyFitsize(reduceValue: Metric.tableViewLeftRightMargin * 2)
static var width: CGFloat = 375
}
2、使用
struct Metric {
static let tableViewLeftRightMargin: CGFloat = 10
static let tableViewTopMargin: CGFloat = 10
static let tableViewHeight: CGFloat = Fit.$width(30) // 去掉左右边距后进行适配的值
static let rowViewTopMargin: CGFloat = 5
static let rowViewHeight: CGFloat = tableViewHeight - rowViewTopMargin * 2
static let rowLeftViewWidth: CGFloat = Fit.$width(177.5)
static let rowCenterViewWidth: CGFloat = Fit.$width(100.5)
static let rowRightViewWidth: CGFloat = Fit.$width(77)
}
print("默认适配的宽度: \(Fit.width)")
// 移除指定尺寸后的适配,调用方式:
// 以下都是以适配 tableView 为例,移除 tableView 左右两侧固定的边距,以剩余的宽度来做适配
// 方式一:先赋值再取值
// 将 20 进行适配
Fit.width = 20
print("适配后的值 -- \(Fit.width)")
// 方式二:使用 $ 将 width 当方法用,传入待适配的值
// 将 30 进行适配
let aVal = Fit.$width(30)
print("适配后的值 aVal -- \(aVal)")
// 方式三:调用 SwiftyFitsize.fit 方法
let bVal = SwiftyFitsize.fit(
size: 40,
fitType: .flexibleWidth,
reduceValue: Metric.tableViewLeftRightMargin * 2
)
print("适配后的值 bVal -- \(bVal)")
Objective-C
1、定义宏
#define kFitWidth(value) \
[SwiftyFitsize fitWithSize:value fitType:SwiftyFitTypeFlexibleWidth reduceValue:20]
2、使用
CGFloat fitWidth = kFitWidth(40);
NSLog(@"fitWidth -- %f", fitWidth);