写个益智小游戏 看你能过关不?

来源:互联网 发布:淘宝支点运动是真的吗 编辑:程序博客网 时间:2024/05/01 17:29

    生气生气生气

- (void)viewDidLoad {

    [superviewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    

    self.dataSource = [[NSMutableArrayalloc] init];

    

    for (int i =0; i < 10; i++) {

        for (int j =0; j < 8; j++) {

            self.button=[UIButtonbuttonWithType:UIButtonTypeSystem];

            self.button.frame=CGRectMake(30+40*j,100+40*i, 35, 35);

            self.button.backgroundColor = [UIColorblackColor];

            [self.viewaddSubview:self.button];

            [self.buttonaddTarget:selfaction:@selector(clipChange:)forControlEvents:UIControlEventTouchUpInside];

            [_dataSource addObject:self.button];

        }

    }

    

    // 创建重新开始游戏的按钮

    UIButton *resetButton = [UIButtonbuttonWithType:UIButtonTypeSystem];

    resetButton.frame = CGRectMake(100, 500, 200, 40);

    resetButton.center = CGPointMake(self.view.center.x,550);

    [resetButton setTitle:@"重新开始"forState:UIControlStateNormal];

    [resetButton addTarget:selfaction:@selector(resetButtonDidPress:)forControlEvents:UIControlEventTouchUpInside];

    [self.viewaddSubview:resetButton];

    

}


// 重新开始游戏的实现方法

- (void)resetButtonDidPress:(UIButton *)sender {

    for (UIButton *buttonin _dataSource) {

        button.backgroundColor = [UIColorblackColor];

    }

}


- (void)clipChange:(UIButton *)sender {

    if (sender.backgroundColor == [UIColorredColor]) {

        sender.backgroundColor = [UIColorblackColor];

    } else {

        sender.backgroundColor = [UIColorredColor];

    }

    for (UIButton *buttonin _dataSource) {

        // 用两个方块中心点的坐标距离来作为判断条件让被点击的方块上下左右的方块都被改变颜色 fabs(取绝对值)

        if (fabs(button.center.x - sender.center.x) + fabs(button.center.y - sender.center.y) ==40) {

            if (button.backgroundColor == [UIColorredColor]) {

                button.backgroundColor = [UIColorblackColor];

            } else {

                button.backgroundColor = [UIColorredColor];

            }

        }

    }

}


0 0
原创粉丝点击