摘要: 1,UIView常用的一些属性如下:frame:相对父视图的坐标和大小(x,y,w,h)bounds:相对自身的坐标和大小,所以bounds的x和y永远为0(0,0,w,h)center:相对父视图的中点坐标transform:控制视图的放大缩小和旋转superview:获取父视图subviews:... 阅读全文
posted @ 2015-09-26 19:30 brave-sailor 阅读(715) 评论(0) 推荐(0)
摘要: UISreen类代表了屏幕,开发中一般用来获取屏幕相关的属性,例如获取屏幕的大小。1234567//获取屏幕大小var screenBounds:CGRect = UIScreen.mainScreen().boundsprintln(screenBounds) //iPhone6输出:(0.0,0... 阅读全文
posted @ 2015-09-26 19:02 brave-sailor 阅读(294) 评论(0) 推荐(0)
摘要: 在过去只有iphone4的时候,可以在代码里将一个可视单元的位置写死,这样是没问题的,但随着iPhone5,6的发布,屏幕尺寸有了越来越多种可能。这就要求App的UI控件具有在不同屏幕尺寸的设备上具有一定动态的可调性,实现较好的UI展示效果。 结合使用Auto Layout和Size Classe... 阅读全文
posted @ 2015-09-26 19:01 brave-sailor 阅读(575) 评论(0) 推荐(0)
摘要: 1,Swift继续使用Object-C原有的一套线程,包括三种多线程编程技术:(1)NSThread(2)Cocoa NSOperation(NSOperation和NSOperationQueue)(3)Grand Central Dispath(GCD)2,本文着重介绍Grand Central... 阅读全文
posted @ 2015-09-26 18:59 brave-sailor 阅读(369) 评论(0) 推荐(0)
摘要: 1,Swift继续使用Object-C原有的一套线程,包括三种多线程编程技术:(1)NSThread(2)Cocoa NSOperation(NSOperation和NSOperationQueue)(3)Grand Central Dispath(GCD)2,本文着重介绍Cocoa NSOpera... 阅读全文
posted @ 2015-09-26 18:56 brave-sailor 阅读(469) 评论(0) 推荐(0)
摘要: 1,Swift继续使用Object-C原有的一套线程,包括三种多线程编程技术:(1)NSThread(2)Cocoa NSOperation(NSOperation和NSOperationQueue)(3)Grand Central Dispath(GCD)2,本文着重介绍NSThreadNSTr... 阅读全文
posted @ 2015-09-26 18:55 brave-sailor 阅读(318) 评论(0) 推荐(0)
摘要: Swift使用自动引用计数(ARC)来管理应用程序的内存使用。在大多是情况下,并不需要考虑内存的管理。当实例不再需要的时候,ARC会自动释放这些实例所使用的内存。但ARC并不是绝对安全的。下面两种情况会发生内存泄露。1,类实例之间的循环强引用两个类实例都有一个强引用指向对方,这样的情况就是强引用循环... 阅读全文
posted @ 2015-09-26 18:54 brave-sailor 阅读(540) 评论(0) 推荐(0)
摘要: 下面对String常用的属性和方法做个总结1,判断是否为空:isEmpty123var str:Stringif str.isEmpty{}2,获取字符数量:countElements12let str = "hangge.com"println("\(countElements(str))个字符"... 阅读全文
posted @ 2015-09-26 18:42 brave-sailor 阅读(702) 评论(0) 推荐(0)
摘要: 游戏少不了背景音乐和音效。下面我们通过创建一个管理音效的类,来实现背景音乐的播放,同时点击屏幕可以播放相应的音效。声音管理类 SoundManager.swift1234567891011121314151617181920212223242526272829import SpriteKit//引... 阅读全文
posted @ 2015-09-26 18:32 brave-sailor 阅读(794) 评论(0) 推荐(0)
摘要: 为了增强较大数值的可读性,Swift语言增加了下划线(_)来分隔数值中的数字。不管是整数,还是浮点数,都可以使用下划线来分隔数字。1234//数值可读性let value1 = 10_000_000_000let value2 = 1_000_000.000_000_1var value3:Int ... 阅读全文
posted @ 2015-09-26 18:32 brave-sailor 阅读(432) 评论(0) 推荐(0)
摘要: 下面通过一个样例演示如何实现飞行道具的生成,以及道具碰撞拾取。样例说明:1,屏幕从右到左不断地生成苹果飞过来(苹果高度随机)2,点击屏幕可以让熊猫跳跃3,熊猫碰到苹果,苹果消失运行效果:样例代码:苹果工厂类 AppleFactory.swift1234567891011121314151617181... 阅读全文
posted @ 2015-09-26 18:30 brave-sailor 阅读(552) 评论(0) 推荐(0)
摘要: 在游戏开发中,比如跑酷游戏。我们需要实现背景的无限循环滚动,来营造运动的效果。除了单层的背景滚动,还有视差滚动。视差滚动是指让多层背景以不同的速度移动,形成立体的效果,从而带来非常出色的视觉体验。样例说明:1,本样例背景分为两层。第一层更靠近游戏窗口的色彩更鲜艳,移动速度也更快一些。第二层由于要模拟... 阅读全文
posted @ 2015-09-26 18:28 brave-sailor 阅读(590) 评论(0) 推荐(0)
摘要: 一,下面演示了如何开发一个跑酷游戏,实现的功能如下:1,平台工厂会不断地生成平台,并且向左移动。当平台移出游戏场景时就可将其移除。2,生成的平台宽度随机,高度随机。同时短平台踩踏的时候会下落。3,奔跑小人设置了三种状态:奔跑,跳跃,打滚。4,跳跃时可以再进行二段跳。5,如果在一定高度落下,会先打滚... 阅读全文
posted @ 2015-09-26 18:27 brave-sailor 阅读(562) 评论(0) 推荐(0)
摘要: 对于场景内对象元件的点击响应,我们可以在场景的touchesBegan()方法中内统一处理。SKScene中touchesBegan()是响应屏幕点击的方法,在这里面我们可以先获取点击位置下所有的对象,然后筛选出需要的对象再调用该对象的方法。12345678910111213141516171819... 阅读全文
posted @ 2015-09-26 18:24 brave-sailor 阅读(735) 评论(0) 推荐(0)
摘要: 我们通常继承SKSpriteNode来实现游戏中的元素,除了可以使用图片作为纹理皮肤外。我们还可以使用动画纹理集来实现动画播放。动画纹理集的制作也很简单,首先要有一套动画序列图,然后把它们放到一个文件夹下,最后把文件夹改名为*.atlas后缀就行了。下面通过一个“神经猫”动画元件来演示:--- 神... 阅读全文
posted @ 2015-09-26 18:19 brave-sailor 阅读(769) 评论(0) 推荐(0)
摘要: 下面是生成一个“围住神经猫”游戏的初始场景:1,界面下方会生成9*9共81个圆点,同时圆点内部添加文本标签显示索引2,默认圆点为灰色,每行随机取两个点变为红色3,奇数行和偶数行有一定的错位,错位的横向距离是圆的半径效果图如下:1,首先给资源库Images.xcassets添加资源图片:2,圆点类G... 阅读全文
posted @ 2015-09-26 18:16 brave-sailor 阅读(464) 评论(0) 推荐(0)
摘要: 一,什么是SpriteKitSpriteKit是苹果公司官方出品,用于制作2D游戏的框架。这个框架具备了图形渲染和动画的功能。可以使图像或者精灵(sprite)动 起来。SpriteKit的渲染方式是传统的环形渲染,允许在渲染前处理每一帧点的内容。例如定义场景中的元素,以及这些内容在每一帧中是如何... 阅读全文
posted @ 2015-09-26 18:15 brave-sailor 阅读(936) 评论(0) 推荐(0)
摘要: 1,先把背景图片bg.jpg,bg@2x.jpg直接拖进Images.xcassets中2,设置如下代码(背景图直接铺满整个屏幕)12345678910111213141516import SpriteKitclass GameScene: SKScene {//当切换到这个场景视图后overrid... 阅读全文
posted @ 2015-09-26 18:15 brave-sailor 阅读(368) 评论(0) 推荐(0)
摘要: 使用UILocalNotification可以很方便的实现消息的推送功能。我们可以设置这个消息的推送时间,推送内容等。当推送时间一到,不管用户在桌面还是其他应用中,屏幕上方会都显示出推送消息。1,推送消息的发送--- AppDelegate.swift ---1234567891011121314... 阅读全文
posted @ 2015-09-26 18:14 brave-sailor 阅读(520) 评论(0) 推荐(0)
摘要: 通过使用静态单元格的列表,我们可以很方便的进行页面布局。下面通过一个“添加任务页面”来进行演示。效果图如下:实现步骤:1,在storyboard中拖入一个TableViewController,同时创建一个对应的类(MyTabelViewController.swift)进行绑定。2,选择表格,在... 阅读全文
posted @ 2015-09-26 18:13 brave-sailor 阅读(507) 评论(0) 推荐(0)