標籤:
製作簡單的九宮格:
源碼如下:
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
Objective-C:製作九宮格