1、把一张有比较好看的,有9个或者12个明显位置标志的背景图片。加一个返回的button,就是这么的so easy。
2、
下面主要跟大家探讨以下,怎么样最快实现这个核心代码。
核心思路: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.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;
}
}