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.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;

}

}

打灰太狼oc核心代码实现相关推荐

  1. 鱼眼图像自监督深度估计原理分析和Omnidet核心代码解读

    作者丨苹果姐@知乎 来源丨https://zhuanlan.zhihu.com/p/508090405 编辑丨3D视觉工坊 在自动驾驶实际应用中,对相机传感器的要求之一是拥有尽可能大的视野范围,鱼眼相 ...

  2. 利用WxJava实现PC网站集成微信登录功能,核心代码竟然不超过10行

    最近网站PC端集成微信扫码登录,踩了不少坑,在此记录下实现过程和注意事项. 本文目录 一.微信开放平台操作步骤1.创建"网站应用"2.获取AppID和AppSecret二.开发指南 ...

  3. 融资 2000 万美元后,他竟将核心代码全开源,这……能行吗?

    立即报名:https://t.csdnimg.cn/KqnS 有这么一位"任性"的技术创业者: 2017 年,50 岁开始第三次创业,踏足自己从未深入涉及过的物联网大数据平台,敲下 ...

  4. 太牛了!30 年开源老兵,10 年躬耕 OpenStack,开源 1000 万行核心代码!

    受访者 | Jonathan Bryce 记者 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 万物互联时代下,我们的一切都在依赖计算基础设施,科学.金融.政府.教育.通信和医疗保健依赖现代 ...

  5. asp.net的cms 核心代码篇

    好像开源有点多余,核心代码就下面这些. 1 using System;2 using System.Collections;3 using System.Collections.Generic;4 u ...

  6. 构建dubbo分布式平台-maven构建ant-framework核心代码annotation

    今天重点讲解的是ant-framework核心代码的编写过程. 其中ant-framework是ant分布式框架的基础核心框架,其中包括CRUD,MVC等一系列基类和模板.另外定义了spring,my ...

  7. ML之LGBMRegressor(Competition):2018年全国大学生计算机技能应用大赛《住房月租金预测大数据赛》——设计思路以及核心代码—191017再次更新

    ML之LGBMRegressor(Competition):2018年全国大学生计算机技能应用大赛<住房月租金预测大数据赛>--设计思路以及核心代码-191017再次更新 目录 竞赛相关信 ...

  8. 淘宝店铺图片数据迁移核心代码

    核心代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...

  9. OceanBase首次阐述战略:继续坚持自研开放之路 开源300万行核心代码

    简介:在数据库OceanBase3.0峰会上,蚂蚁集团自主研发的分布式数据库OceanBase首次从技术.商业和生态三个维度对未来发展战略进行了系统性阐述.同时,OceanBase宣布正式开源,并成立 ...

最新文章

  1. Vue 源码阅读(三)Special Attributes
  2. 关于MM32-Link Programmer软件修改建议
  3. 【 FPGA 】FIR滤波器目录
  4. 拖延的本质是逃避!| 今日最佳
  5. console对象及js函数
  6. java期末考试 6
  7. asp.net 2.0 中如何让membership接口使用自定义数据库。
  8. 怎样用命令查看Mysql数据库大小?
  9. lhdc协议是什么_无线耳机标注的编码是什么意思?看懂了会少很多坑
  10. 华为不同vlan单臂路由的配置
  11. java源代码怎么用_java源码怎么使用?java源代码用什么打开!
  12. python xlrd 写入已有的excel并保留原excel格式
  13. 台式计算机如何上无线网络,台式机怎么无线上网
  14. 工业互联网发展行动计划(2018-2020年)
  15. 每日excel学习之分类汇总和数据有效性
  16. 飞刀哥移植UC/OS-II到LPC1788(ARM Cortex-M3)的步骤
  17. Java 使用redis 设计一个每天重新开始计数的计数器
  18. matlab建立三层蒸发模型,水文模型三层蒸发模型的问题(初学者)
  19. 打开任务管理器的方法
  20. 如何在ARM平台编译NAMD

热门文章

  1. 天顶围棋 8 zenith 8_2019年第九届世界围棋巅峰对决盛大启幕,此次坐标安徽阜阳祥源文旅城!...
  2. 如何改变胆小怕事的性格?
  3. day38--Dijkstra 算法与 Prim 算法
  4. Smart Tomcat插件的使用详解
  5. Log4j 严重漏洞修最新修复方案参考
  6. css样式不透明,css属性transparent不透明问题解析
  7. linux如何切换php版本
  8. C++实现复化辛普森公式求积分算法
  9. 手机常见干扰问题分析与解决方法
  10. 基于Unity实现第三人称移动旋转以及视角控制