IOS 九宫格算法

Posted 守望星空

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 九宫格算法相关的知识,希望对你有一定的参考价值。

@interface ViewController ()

@property (nonatomic,strong) NSArray *apps; //获取.plist数据
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
  
    
    //九宫格的总列数
    int totalColumns=5;
    
    //1.1个格子的尺寸
    CGFloat appW=50;
    CGFloat appH=60;
    
    //2.计算间隙 =(控制器view的宽度 -5*应用宽度)/应用宽度+1
    CGFloat margin=(self.view.frame.size.width-totalColumns*appW)/(totalColumns+1);
    
    //3.要的应用个数创建对应的格子
    
    for (int index=0; index<self.apps.count; index++)
    {
        //3.1 创建1个格子
        UIView *appView=[[UIView alloc]init];
        
        //设置背景色
        appView.backgroundColor=[UIColor redColor];
        
        //3.2计算行号和列号
        int row =index /totalColumns;
        int col =index % totalColumns;
        
        CGFloat appX =margin+ col*(appW + margin);
        CGFloat appY =30+ row*(appH + margin);
        
        appView.frame=CGRectMake(appX, appY, appW, appH);
        
        //3.3添加格子到控制器的View
        [self.view addSubview:appView];
        
    }
    
    
}

 

以上是关于IOS 九宫格算法的主要内容,如果未能解决你的问题,请参考以下文章

IOS 自定义按钮(代码实现)+九宫格

iOS应用九宫格算法

iOS开发系列-九宫格算法-xib

java 九宫格算法,根据已知数据算出九宫格

iOS代码实现九宫格

挑战程序设计竞赛(算法和数据结构)——19.2九宫格拼图问题的JAVA实现