打灰太狼oc核心代码实现

1、把一张有比较好看的,有9个或者12个明显位置标志的背景图片。加一个返回的button,就是这么的so easy。
2、 打灰太狼oc核心代码实现
下面主要跟大家探讨以下,怎么样最快实现这个核心代码。
    核心思路:1、每个狼用一个自定义button+图片表示。
                  2、开始把button隐藏起来,让button在12个位置随机出现。
                  3、点击的时候让它显示出来。
                  4、不点击的时候也让它在一定的时间内自动消失。
                  5、至于难度的设置,有很多种方法,以后待续。
核心代码: bt1=[UIButton buttonWithType:UIButtonTypeCustom];(属性是自定义的按钮)

          bt1.tag=1;(设置tag)

 

                 bt1.frame=CGRectMake(20, 80, 60, 80);(坐标位置,按钮大小)

                 [bt1 setImage:[UIImage imageNamed:@"xx.png"] forState:UIControlStateNormal];

 

          (以这样形式的代码创建出12个灰太狼,注意设置好灰太狼的位置要和背景图片相对应。其中“xx.png”是一个灰太狼的图片,          该图片被绑定在按钮种)

          再创建label来显示分数。

 

                 lab01=[[UILabel alloc]init];

                 lab01.text=@"分数:";

          lab01.frame=CGRectMake(220, 80, 100, 30);
          把按钮视图显示,但是设置
                 [self.view addSubview:bt1];
          bt1.hidden=YES;(把按钮隐藏)
一开始,让灰太狼随机产生,用定时器按时调用 slete方法。

[NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(slete) userInfo:nil repeats:YES];(让灰太狼每隔两秒出现)

-(void)slete{

    

    

    x=arc4random()%12+1;

    printf("x=%d\t",x);

    

    switch (x)

    {

        case 1:

            bt1.hidden=NO;

            break;

        case 2:

            bt2.hidden=NO;

            break;

        case 3:

            bt3.hidden=NO;

            break;

        case 4:

            bt4.hidden=NO;

            break;

        case 5:

            bt5.hidden=NO;

            break;

        case 6:

            bt6.hidden=NO;

            break;

        case 7:

            bt7.hidden=NO;

            break;

        case 8:

            bt8.hidden=NO;

            break;

        case 9:

            bt9.hidden=NO;

            break;

        case 10:

            bt10.hidden=NO;

            break;

        case 11:

            bt11.hidden=NO;

            break;

        case 12:

            bt12.hidden=NO;

            break;

            

        default:

            break;

    }

}
                 当点击按钮的时候调用clik:方法。                     
[bt1  addTarget:self action:@selector(clik:) forControlEvents:UIControlEventTouchUpInside];
                  每个按钮都调用这个方法。
                  -(void)clik:(id)sender{

    UIButton * btn=sender;

 count+=100;    

(count是全局静态变量来保存分数,但再次重启界面的时候,把它置0就可以了。)


        [MCSoundBoard addAudioAtPath:[[NSBundle mainBundle] pathForResource:@"da.mp3" ofType:nil]              forKey:@"da"];
       [MCSoundBoard playAudioForKey:@"da"];  //点击的时候可以加入音效,mp3各市的击打的声音
    if(btn.tag==x)  (x是12个标签的标志,设置为静态变量。当点击的按钮的tag与x匹配的时候,就把这个button隐藏)
    {

      n++;

        [NSTimer scheduledTimerWithTimeInterval:0 target:self selector:@selector(remove) userInfo:nil                       repeats:NO];

 

    }

    

    lab01.text=[[NSString alloc]initWithFormat:@"分数:%d",count ];


}


 

 

 -(void)remove

{

    

    switch (x) {

        case 1:

            //[bt1 removeFromSuperview];(移出视图)

            bt1.hidden=YES;        (隐藏)两个方法都可以用

            break;

        case 2:

            //[bt2 removeFromSuperview];

            bt2.hidden=YES;

            break;

        case 3:

            //[bt3 removeFromSuperview];

            bt3.hidden=YES;

            break;

        case 4:

            //[bt4 removeFromSuperview];

            bt4.hidden=YES;

            break;

        case 5:

            // [bt5 removeFromSuperview];

            bt5.hidden=YES;

            break;

        case 6:

            // [bt6 removeFromSuperview];

            bt6.hidden=YES;

            break;

        case 7:

            // [bt7 removeFromSuperview];

            bt7.hidden=YES;

            break;

        case 8:

            // [bt8 removeFromSuperview];

            bt8.hidden=YES;

            break;

        case 9:

            //[bt9 removeFromSuperview];

            bt9.hidden=YES;

            break;

        case 10:

            // [bt10 removeFromSuperview];

            bt10.hidden=YES;

            break;

        case 11:

            //[bt11 removeFromSuperview];

            bt11.hidden=YES;

            break;

        case 12:

            // [bt12 removeFromSuperview];

            bt12.hidden=YES;

            break;

 

        default:

            

            break;

            

     

    

}

                 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值