iOS 基础入门--Bull' Eye 小游戏
说明
Bull's Eye小游戏是http://www.raywenderlich.com/store/ios-apprentice里非常酷的入门demo
跟着该教程一步步做下来便有了 Bull's Eye,源码可以在官网寻找,或者从我的github上clone, https://github.com/avenwu/bulleye.git
先来秀效果图:
规则很简单,每次产生一个1-100的随机数,玩家通过滑块滑动到最接近的位置后单击Hit me 按钮,弹出得分情况,得分累计到Scroe后面,Round显示当前为第几局, 左侧有重置按钮,可以清零得分和局数。
目标
- 了解xcode创建项目的过程
- 熟悉并使用ImageView, Button, Label, Horizontal Slider, WebView,为UI控件添加Action
- 3.5/4inch简单的尺寸适配
- 使用storyboard,添加view controller
开发环境:Xcode5.0.2/Mac Pro
实现讲解
游戏非常简单,通过xcode创建一个singleview的项目,勾选ARC,这样新建出来的项目已经包好了我们需要额绝大多数的文件,如果做过Android,其实会发现iOS应用开发还是比较上手的。下图是Bull‘s Eye的项目结构,
相比较新建的项目里面多了一个view controller,这个view controller按我的理解来看可以类比成Android里面Activity,他是主要是用来处理UI控件的交互逻辑,比如更新label的文本内容,添加Action事件,有一点不同的是不要我们显示地设置他对应的view,而是通过在storyboard里面拖出一个view controller然后制定它对应的class为我们的类文件。这里ViewController对应游戏主界面,AboutViewController对应的是说明页面。
单击左侧工程栏里的Main.storyboard,然后编辑区域将出现类似Android里面xml布局的编辑区域,我们就在这里选中需要的controller然后在上面添加所需UI控件,所有的控件可以在右侧的UIKit里找到,直接拖拽到页面内,然后调整参数,显示内容,大小颜色什么的都可以,拖一个新的view controller出来绑定为AboutViewController,同样放上相应控件,
现在页面的布局已经完成了,但是我们如何从代码里面控制某个控件呢?在Android里面我可为控件制定id然后再activity内findViewbyId, 在iOS里面通过OutLet和Action来做这件事,至于两者的涵义和操作,相关资料很多,这里不再啰嗦。
现在我们开始敲代码了,打开ViewController.h这是我们的头文件,里面声明了Slider, label, 和Action几个方法,都是和UI控件绑定好的,从其那面的同心圆小标记可以看出来
现在打开他的实现文件ViewController.m,实现各函数,showAlert在Hitme按钮单击的时候触发,我们让他弹出一个对话框,显示当前的得分情况
iOS 基础入门--Bull' Eye 小游戏 的更多相关文章
- [置顶] IOS 基础入门教程
IOS 基础入门教程 教程列表: IOS 简介 IOS环境搭建 Objective C 基础知识 创建第一款iPhone应用程序 IOS操作(action)和输出口(Outlet) iOS - 委托( ...
- iOS 类似2048、4096小游戏-OC
大概思路(初步制作,粗工制造):demo 1.Collection 创建cell 2.cell上添加一个view,用来添加手势 3.字典用来存放数据->每次执行StarGame数组接收没有数字的 ...
- 《慕客网:IOS基础入门之Foundation框架初体验》学习笔记 <五> NSDicionary + NSMutableDictionary
int main(int argc, const char * argv[]) { @autoreleasepool { //字典, 存储的内存不是连续的 用key和value进行对应(键值) //k ...
- iOS基础 - 史上最难游戏
步骤一:隐藏状态栏 步骤二:屏幕适配 步骤三:设置窗口的根控制器为导航控制器,并且设置导航条和状态栏. 步骤四:搭建设置界面 步骤五:控制器连线 步骤六:搭建关卡控制器 加载pilst文件 创建关卡模 ...
- iOS帅气加载动画、通知视图、红包助手、引导页、导航栏、朋友圈、小游戏等效果源码
iOS精选源码 如丝般顺滑的微信朋友圈(点赞,评论,图文混排表情,... 动态菜单第三版本:动态项,自适应方向 仿appstore首页滚动效果 iOS 透明导航栏方案 TransparentNavig ...
- 了解python,利用python来制作日常猜拳,猜价小游戏
初次接触python,便被它简洁优美的语言所吸引,正所谓人生苦短,python当歌.python之所以在最近几年越发的炽手可热,离不开它的一些特点: 1.易于学习:Python有相对较少的关键字,结构 ...
- 改进我们的小游戏 - 零基础入门学习Python004
改进我们的小游戏 让编程改变世界 Change the world by program 改进我们的小游戏 很多鱼油对改善这个游戏提出了建议,小甲鱼做了一下总结,大概有以下几个方面需要改进: 猜错的时 ...
- Python基础入门-实现猜数字小游戏
今天呢,我们来通过前面学过的一些知识点来完成一个猜数字大小的游戏程序设计.那么呢,一般人写代码直接上来就干,没有分析,这样的做法是没有产出的,除非你是大牛,今天呢,我会把我学习编程的思路分享给大家,我 ...
- 零基础入门学习Python(4)--改进我们的小游戏
前言 在以前的博客中有做个一个小游戏,但是太简单了,所以这次就来对我们做的小游戏进行改进,改善从以下四个方面进行: 程序猜错的时候要给出提示,例如告诉用户输入的值是大了还是小了. 以前程序每运行一次只 ...
随机推荐
- C++生成斐波拉其数列
该方法作为一种演示功能左右,运行较慢. #include <iostream> using namespace std; class Fibonacci{ public: int a, b ...
- Viewpager 去掉两侧的光晕效果
方案1: viewPager.setOverScrollMode(viewPager.OVER_SCROLL_NEVER); 方案2:通过反射的办法,直接操作具体控件具体的控件 private voi ...
- Vuex 实践讲解
state 用来数据共享数据存储 mutation 用来注册改变数据状态 getters 用来对共享数据进行过滤操作 action 解决异步改变共享数据 这个四大特征就是核心,如何用怎么用 接下来还是 ...
- 阿里云流计算BLINK
https://help.aliyun.com/product/45029.html?spm=a2c4g.11186623.3.1.sSHCfr https://yq.aliyun.com/tags/ ...
- What-are-P-NP-NP-complete-and-NP-hard
https://www.amazon.com/Computational-Complexity-Approach-Sanjeev-Arora/dp/0521424267 http://theory.c ...
- nginx 屏蔽恶意请求
https://www.xlongwei.com/detail/nginx-%E5%B1%8F%E8%94%BD%E6%81%B6%E6%84%8F%E8%AF%B7%E6%B1%82 nginx可以 ...
- pandas数组(pandas Series)-(2)
pandas Series 比 numpy array 要强大很多,体现在很多方面 首先, pandas Series 有一些方法,比如: describe 方法可以给出 Series 的一些分析数据 ...
- angular学习笔记(三十)-指令(1)-概述
之前在 angular学习笔记(十九)-指令修改dom 里面已经简单的提到了angular中的指令,现在来详细的介绍 '指令' 一.指令的创建: dirAppModule.directive('dir ...
- 如何让 zend studio 10 识别 Phalcon语法并且进行语法提示
让 zend studio 10 识别 Phalcon语法并且进行语法提示 https://github.com/rogerthomas84/PhalconPHPDoc 下载解压后,把里面 phalc ...
- Spark SQL inferSchema实现原理探微(Python)【转】
使用Spark SQL的基础是“注册”(Register)若干表,表的一个重要组成部分就是模式,Spark SQL提供两种选项供用户选择: (1)applySchema applySche ...