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
程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!