九宫格的计算思路

来源:互联网 发布:阿里云系统电视好不好 编辑:程序博客网 时间:2024/05/01 12:27

九宫格的计算思路

这里写图片描述
- 按行(row)和按列(col)显示或者排列数据
- 行和列的下标从0开始
- 行坐标:索引除以列数
- 列坐标:索引对列数取余

    NSUInteger index = self.shopsView.subviews.count;    NSUInteger row = index / kCol;    NSUInteger col = index % kCol;    NSLog(@"(%ld,%ld)",row,col);
  • 图片紧贴显示区域边缘
    • 横向间隙 = (显示区域宽度 - 图片宽度*列数)/(列数+1)
  • 图片跟显示区域有间距
    • 横向间隙 = (显示区域宽度 - 图片宽度*列数)/(列数-1)
  • 每张图片的frame的原点:
    • x值:显示区域原点横坐标+(横间距+图片宽度)*列数
    • y值:显示区域原点竖坐标+(竖间距+图片高度)*行数
    CGFloat originalX = marginX;    CGFloat originalY = kMarginY;    view.frame = CGRectMake(    originalX + (marginX + kImageViewW) * col,    originalY + (kImageViewH + kMarginY) *row,    kImageViewW,    kImageViewH    );

这里写图片描述

0 0
原创粉丝点击