九宫格-笔记

2016-03-17  本文已影响0人  Lucius_cheng

一.九宫格 排列计算方法.

  1. 先确定每行多少列.
  2. 在根据每行的单元格个数求出,单元格之间的间距
  3. 再根据父控件的subViews.count属性求出每个单元的编号
    4.根据单元格编号得出每个单元格在第几行第几列
    5.根据第几行,得出单元格的Y值
    6.根据第几列,得出单元格的X值
CGFloat shopW = 50;
CGFloat shopH = 70;
    //商品的编号 商品的行号 列号
    NSUInteger shopNub = self.shopsView.subviews.count;
//一行多少列
int cols = 3;
//第几行
NSUInteger row = shopNub / cols;
//第几列
NSUInteger col = shopNub % cols;
 //每列的间距
 CGFloat  colMargin = (self.shopsView.frame.size.width -cols*shopW) / (cols - 1);
    //每行间距
    CGFloat rowMargin = 10;
    CGFloat shopX = col *(shopW + colMargin);
    CGFloat shopY = row *(shopH +rowMargin);
    shopView.frame = CGRectMake(shopX, shopY, shopW, shopH);
上一篇下一篇

猜你喜欢

热点阅读