iOS:制作九宫格

 制作简单的九宫格:

源码如下:

 1 #import "ViewController.h"
 2 
 3 @interface ViewController ()
 4 
 5 @end
 6 
 7 @implementation ViewController
 8 
 9 - (void)viewDidLoad {
10     [super viewDidLoad];
11 
12     //创建九宫格
13     NSInteger col = 3;  //每行几列
14     NSInteger total = 9;//总个数
15     
16     //格子的宽度、高度
17     UIImage *image = [UIImage imageNamed:@"0.png"];
18     CGFloat cellWidth = image.size.width;
19     CGFloat cellHeight = image.size.height;
20     
21     CGFloat screenWidth = self.view.frame.size.width;
22     
23     CGFloat gapX = (screenWidth-cellWidth*col)/(col+1);//x方向的间隔
24     CGFloat gapY = gapX;//y方向的间隔
25     
26     
27     //计算行数
28     NSInteger row = 0;
29     
30     for(int i=0; i<total; i++)
31     {
32         UIButton *button = [[UIButton alloc]init];
33         [button setBackgroundImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.png",i]] forState:UIControlStateNormal];
34         
35         //计算是否需要换行
36         if(i%col == 0)
37         {
38             row++;
39         }
40         CGFloat x = gapX+(cellWidth+gapX)*(i%col);
41         CGFloat y = gapY+(cellHeight+gapY)*row;
42         button.frame = CGRectMake(x, y, cellWidth, cellHeight);
43         
44         [self.view addSubview:button];
45     }
46 }
47 
48 @end

 

posted @ 2015-08-28 20:16  XYQ全哥  阅读(381)  评论(0编辑  收藏  举报