FPVerticalView 1.0.4

FPVerticalView 1.0.4

fakepinge 维护。



FPVerticalView

CI Status Version License Platform

示例

要运行示例项目,请克隆仓库,然后首先从 Example 目录中运行 pod install

介绍

这是一个垂直布局的容器,在容器里添加一组视图,容器里的子视图支持frame和约束两种布局方式,容器会根据子视图添加的顺序自动实现从上到下的布局,间隔统一,也可以针对每个子视图设置特殊的间隔,这里你不需要关心子视图具体的位置,当你需要隐藏子视图,只需设置hidden属性容器会自动刷新布局并且处理间隔,当你需要改变子视图的宽度高度,只需修改视图的宽高,容器会自动刷新布局,使用起来非常方便简洁!!!!!

使用方法

基本

FPVerticalView *verticaView = [[FPVerticalView alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth, kScreenHeight - 64)];
verticaView.topMargin = 10;
verticaView.bottomMargin = 10;
// 每个子view的统一间隔,也可以对子view单独设置间隔
verticaView.verMargin = 20;
[self.view addSubview:verticaView];
[verticaView addSubviewArray:[self createView]];

 //  createView的方法
 NSMutableArray *arrayM = [NSMutableArray array];
 NSArray *array = @[self.view0, self.view1, self.view1, self.view2, self.view3, self.view4, self.view5, self.view6, self.view7, self.view8, self.view9];
 [arrayM addObjectsFromArray:array];
 // 嵌套一层垂直容器
 // 申明可以多层嵌套,嵌套的垂直容器需要自己管理自己的内容高度
 if (self.isOnelayersOfNested) {
     [arrayM addObject:self.verticaView1];
 }

 // view的创建 约束布局
 view1 = [[UIView alloc] init];
 view1.backgroundColor = ARC4COLOR;
 // 约束布局的要对这个属性设置
 view1.isMasonry = YES;
 /**
 [view1 mas_makeConstraints:^(MASConstraintMaker *make) {
     make.width.mas_equalTo(kWidth * 2);
 }]   
 */

 // view的创建 frame布局
 view5 = [[UIView alloc] init];
 view5.backgroundColor = ARC4COLOR;
 view5.width = kWidth * 6;
 view5.height = kHeght * 6;
 view5.origin = CGPointZero;
 // 是否自己设置间距
 view5.hasSpecialMargin = YES;
 // 间距
 view5.verMargin = 30;

使用注意事项

// 1.subVerticalViews 需要布局View数组
//  有一些View一开始需要添加进来但是需要隐藏 隐藏的设置需要在addSubviewArray调用后再设置隐藏属性 如下:
FPVerticalView *verticaView = [[FPVerticalView alloc] initWithFrame:self.view.bounds];
verticaView.topMargin = 10;
verticaView.bottomMargin = 10;
verticaView.verMargin = 20;
[verticaView addSubviewArray:[self createView]];
view1.hidden = YES;
view3.hidden = YES;
[self.view addSubview:verticaView];
// 2.Masonry布局的View 需要设置isMasonry属性为YES view1.isMasonry = YES;
// 仅仅只是针对这个view的布局,跟子视图无关;
// 3.Masonry布局的View 更新高度 宽度之类的约束 需要用 mas_updateConstraints 这个方法
// 4.不建议Frame Mansonry 两种布局混用
// 5.混用时 子视图通过[_verticaView addSubviewArray:[self createView]]数组形式添加
// 6.不建议addSubviewToTop等API一个一个的添加子视图 最好以数组的形式进行添加子视图

需求

安装

FPVerticalView可以通过CocoaPods获取。要安装,只需将以下行添加到您的Podfile中

pod 'FPVerticalView'

作者

fakepinge,[email protected]

授权协议

FPVerticalView在MIT授权协议下可用。更多详情请查看LICENSE文件。