iOS 自动布局图片类似微博


现在的应用里都有图文内容,当图片多时我们想让他们自动布局比如5张图片一排三张二排两张图片,当图片再多时能顾自动的排到下一行,大概思路是,当前端收到图片数组时,做一个循环布局,计算行数和列数,设定图片大小大概思路这样,这里我把代码贴出来。这里我以布局一个数字键盘为例

        inputView =[[UIView alloc] initWithFrame:frame];
        inputView.backgroundColor = [UIColor blackColor];
        int line = 3;
        int column = 3;
        int x = 0;
        int y = 0;
        int whith = self.frame.size.width/column;
        int hight = 59;
//下面的循环是关键代码

        for (int i = 0; i < 12; i++) {
            UIButton *btu = [UIButton buttonWithType:UIButtonTypeCustom];
            btu.backgroundColor = [UIColor colorWithRed:235.0/256 green:235.0/256 blue:235.0/256 alpha:1.0f];
            btu.titleLabel.font = [UIFont systemFontOfSize:14];
            btu.titleLabel.textColor = [UIColor blackColor];
            [btu setTitle:self.arr[i] forState:UIControlStateNormal];
            btu.tag = 100+i;
            x = (i%column)*whith;
            y = (i/line)*(hight+1);
            if (i%column != 0) {
                x+=1*(i%column);
            }
            
           if (11 == i) {
                [btu addTarget:self action:@selector(deleAction:) forControlEvents:UIControlEventTouchUpInside];
            }else {
                [btu addTarget:self action:@selector(setAction:) forControlEvents:UIControlEventTouchUpInside];
            }
            if (9 == i && accesstype == ACCESSVIEWTYPEWITHINPUTPW) {
                [btu setTitle:@"字母" forState:UIControlStateNormal];
            }
            btu.frame = CGRectMake(x, y+1, whith, hight);
            [inputView addSubview:btu];
            tv.inputView = inputView;
        }
希望能帮助你们



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值