关灯游戏

Posted 翌日晨曦

tags:

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

ViewController.h

 

 

@property(strong,nonatomic)UIButton *button;

@property(assign,nonatomic)int number;

 

 

 

ViewController.m

 

//每一排的个数

    int index=5;

    //按钮的宽度

    CGFloat buttonWidth=60;

    //按钮的高度

    CGFloat buttonHeigth=60;

    //按钮的起始位置,到边界Y的位置

    CGFloat buttonTop=20;

    //按钮的起始位置,到边界X的位置

    CGFloat buttontoX=(self.view.frame.size.width-buttonWidth*index)/(index+1);

    CGFloat buttontoY=buttontoX;

    

    //设置计算按钮的个数,初始化赋值为1

    self.number=1;

    

    

    for (int i=0; i<45; i++)

    {

        int X=i%index;

        int Y=i/index;

        self.button=[UIButton buttonWithType:UIButtonTypeRoundedRect];

        CGFloat buttonX=(buttontoX+buttonWidth)*X+buttontoX;

        CGFloat buttonY=(buttontoY+buttonHeigth)*Y+buttontoY+buttonTop;

        self.button.frame=CGRectMake(buttonX, buttonY, buttonWidth, buttonHeigth);

        self.button.backgroundColor=[UIColor redColor];

        self.button.layer.cornerRadius=30;

        [self.button addTarget:self action:@selector(testposition:) forControlEvents:UIControlEventTouchUpInside];

    

        [self.view addSubview:self.button];

        

        self.button.tag=self.number++;

        

        NSLog(@"tag=%ld",(long)self.button.tag);

    }   

}

 

//实现位置方法

-(void)testposition:(UIButton *)Button

{

    self.button=Button;

    int num=(int)self.button.tag;

    if (num==1)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num+1] change];

        [[self.view viewWithTag:num+5] change];

    }

    else if(num==5)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-1] change];

        [[self.view viewWithTag:num+5] change];

    }

    else if(num==41)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-5] change];

        [[self.view viewWithTag:num+1] change];

    }

    else if(num==45)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-1] change];

        [[self.view viewWithTag:num-5] change];

    }

    else if(num%5==1)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-5] change];

        [[self.view viewWithTag:num+1] change];

        [[self.view viewWithTag:num+5] change];

    }

    else if(num%5==0)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-5] change];

        [[self.view viewWithTag:num-1] change];

        [[self.view viewWithTag:num+5] change];

    }

    else if(num%5==1)

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-5] change];

        [[self.view viewWithTag:num+1] change];

        [[self.view viewWithTag:num-5] change];

    }

    else

    {

        [[self.view viewWithTag:num] change];

        [[self.view viewWithTag:num-1] change];

        [[self.view viewWithTag:num+1] change];

        [[self.view viewWithTag:num-5] change];

        [[self.view viewWithTag:num+5] change];

    }

    

}

//改变颜色的方法

-(void)change

{

    

    if (self.backgroundColor==[UIColor redColor])

    {

        self.backgroundColor=[UIColor blueColor];

    }

    else

    {

        self.backgroundColor=[UIColor redColor];

    }

}

 

以上是关于关灯游戏的主要内容,如果未能解决你的问题,请参考以下文章

结对编程需求分析

结对编程需求分析

睡觉请关灯

《结对编项目作业名称-设计文档》

NYOJ 455

nyoj 455-黑色帽子