FMFrameMaker 是一个 Objective-C 库,它可以简化、封装和优化视图布局逻辑,将其合并到每个视图的单个块中。
CGRect
帧基于左上角 (origin
) 以及宽高 (size
)。如果你想从右侧进行布局,你需要进行数学运算。如果你想居中,你需要进行数学运算。如果你想从边缘缩进,你需要进行数学运算。使用 FrameMaker,你可以忘记数学。你只需要指定你想固定的部分,FrameMaker 就会计算其他部分。
-setFrame:
以最小化视图层次结构的布局这个库受 Masonry 启发,但没有自动布局。
#import "FMFrameMaker.h"
居中一个已调整大小的视图
[view fm_makeFrame:^(FMFrameMaker *frameMaker) {
frameMaker.size = CGSizeMake(100, 100);
frameMaker.centered = YES;
}];
显示一个距离底部右角 10 点的已调整大小的视图
[view fm_makeFrame:^(FMFrameMaker *frameMaker) {
frameMaker.size = CGSizeMake(100, 100);
frameMaker.bottom = 10;
frameMaker.right = 10;
}];
显示一个垂直和水平缩进 20 点的视图
[view fm_makeFrame:^(FMFrameMaker *frameMaker) {
frameMaker.size = CGSizeMake(100, 100);
frameMaker.horizontalOffset = 20;
frameMaker.verticalOffset = 20;
}];
观看演示项目以获取更多示例。
FrameMaker 使用简单的 API,向后与 iOS 2.0 兼容。
是的!
FrameMaker 在 MIT 许可证下提供。