首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Masonry 布局不等宽的标签并自动换行

Masonry 布局不等宽的标签并自动换行

作者头像
GuangdongQi
发布2018-05-24 17:46:22
1.9K0
发布2018-05-24 17:46:22
举报
文章被收录于专栏:Guangdong QiGuangdong QiGuangdong Qi

效果

image.png

demo
NSArray *array = @[@"一",@"二二",@"三三三",@"四四四四",@"五五五五五",@"一",@"二二",@"三三三",@"四四四四",@"五五五五五",@"一",@"二二",@"三三三",@"四四四四",@"五五五五五",@"一",@"二二",@"三三三",@"四四四四",@"五五五五五"];
    
    UIButton *listButton;
    
    __block float buttonRight;
    
    for (int i = 0; i < array.count; i++) {
        
        NSString *title = array[i];
        
        CGFloat titleW = [title sizeWithFont:Font(14) maxSize:CGSizeMake(MAXFLOAT, MAXFLOAT)].width + 20;
        
        UIButton *button = [UIButton new];
        button.backgroundColor = WHColor_1779ff;
        [button setTitle:title forState:UIControlStateNormal];
        [button setTitleColor:WhiteColor forState:UIControlStateNormal];
        button.titleLabel.font = Font(14);
        button.layer.cornerRadius = 10;
        button.layer.masksToBounds = YES;
        [self addSubview:button];
        [button mas_makeConstraints:^(MASConstraintMaker *make) {
            
            if (listButton) {
                
                buttonRight = buttonRight + 15 + titleW;
                
                if (buttonRight > SCREEN_WIDTH) {
                    //下一排的第一个
                    make.top.mas_equalTo(listButton.mas_bottom).offset(15);
                    make.left.mas_equalTo(self.tagImageView).offset(0);
                    buttonRight = 30 + titleW;
                }else{
                    //非第一个
                    make.top.mas_equalTo(listButton.mas_top).offset(0);
                    make.left.mas_equalTo(listButton.mas_right).offset(15);
                }
                
                
                
            }else{
                //第一个
                
                make.top.mas_equalTo(tagView.mas_bottom).offset(25);
                make.left.mas_equalTo(self.tagImageView).offset(0);
                buttonRight = 30 + titleW;
            }
            make.size.mas_equalTo(CGSizeMake(titleW, 20));
            
            
        }];
        
        listButton = button;
        
        
    }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.05.09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 效果
    • demo
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档