关于行和列的算法

在开发中,很多时候需要随机生成几行几列,那么就要用算法,其实这个是有规律的。今天,我们一起探讨下,有不对或者更简单的,望大家多多指教。

如题:请生成一个3*3的按钮

    //计算按钮之间的间距

    CGFloat spacex = (frame.size.width - 3 * kBtnW)/(3 + 1 +1.0);

    CGFloat spacey = (frame.size.height - 3 *kBtnH)/(3 + 1+1.0);

    //

    int cloS = 3;

    //

    int rowS = 3;

    for (int i = 0; i < 9; i++) {

        int clo = i / cloS + 1;

        int row = i % rowS + 1;

  //计算 按钮的x,y

        CGFloat btnx = spacex * clo + kBtnW * (clo - 1);

        CGFloat btny = spacey * row + kBtnH * (row - 1);

        btn = [UIButtonbuttonWithType:UIButtonTypeRoundedRect];

        //设置按钮的frame

        [btn setFrame:CGRectMake(btnx, btny, kBtnW, kBtnH)];

        [_MyViewaddSubview:btn];

    }

代码不多,但是好理解。

posted @ 2013-11-23 23:26  nx的封装  阅读(297)  评论(0编辑  收藏  举报