Magic Studio

专心做有逼格的APP!

随笔分类 -  iOS

Xcode6制作动态及静态Framework[repost]
摘要:有没有写SDK或者要将一些常用的工具类做成Framework的经历? 你或许自己写脚本完成了这项工作,相信也有很多的人使用iOS-Universal-Framework,随着xCode6的发布,相信小伙伴们已经都知道了,xCode6支持做Framework了. 同时iOS-Universal-Fra... 阅读全文

posted @ 2014-10-22 14:55 Mr 布鲁斯 阅读(870) 评论(0) 推荐(0)

从Objective-C到Swift,你必须会的(四)DLog
摘要:调试的时候打断点太慢,所以输出log就是一个很好的选择了。断点,一行一行的按,太麻烦了。从log里一条一条的看,很快就可以找到到哪个函数的哪个地方这个代码就没执行了。这里不详细讨论调试技巧的事。不过大概就是这个样子。但是,输出的log你只想在调试的时候看。在正式发布的版本里,那些东西你给谁看,而且语... 阅读全文

posted @ 2014-10-20 15:10 Mr 布鲁斯 阅读(1977) 评论(0) 推荐(0)

从Objective-C到Swift,你必须会的(三)init的顺序
摘要:Objective-C的构造函数吧,就最后return一个self。里头你要初始化了什么都可以。在Swift的init函数里把super.init放在前面,然后再初始化你代码里的东西就会报错了。所以:init(frame: NSRect) { super.init(frame: frame) ... 阅读全文

posted @ 2014-10-20 12:42 Mr 布鲁斯 阅读(1360) 评论(0) 推荐(0)

从Objective-C到Swift,你必须会的(二)组合options
摘要:用过Options这个东西的人都知道,几个竖线就把这些值都和到一起了。比如:+ (NSStringDrawingOptions)combine{ return NSStringDrawingTruncatesLastVisibleLine | NSStringDrawin... 阅读全文

posted @ 2014-10-19 23:33 Mr 布鲁斯 阅读(2190) 评论(0) 推荐(0)

从Objective-C到Swift,你必须会的(一)#pragma mark
摘要:在Objective-C里,为了让代码组织的有序也方便用control+6的快捷键在Xcode中查找,所以出现了一个大家都很熟悉的东东。这就是:#prama mark。#pragma mark但是,这个东西在Swift里对应的是什么呢?首先简单了很多,不用再写那么多的字母了。。。这些landmark... 阅读全文

posted @ 2014-10-19 17:38 Mr 布鲁斯 阅读(2665) 评论(0) 推荐(0)

swift的可选值(optional)
摘要:苹果那文档写了一大堆也没有好好的写一下可选值(optional)这个东西。就是在有一个“Optional Chaining”的章节,但是也不是很充分的说明。最后找了半天在“the basics”里墨迹了几句。如果你没找到optional这个东西的话,那你可能也错过了一个很重要的东西,非optiona... 阅读全文

posted @ 2014-10-11 00:09 Mr 布鲁斯 阅读(1011) 评论(0) 推荐(0)

Swift实现Touch ID验证
摘要:iOS8开放了很多API,包括HomeKit、HealthKit什么的。我们这里要说的是其中之一的Touch ID验证。以前用app保护用户的隐私内容,只能设定和输入密码。眼看着只能是iPhone本身用Touch ID方便酷炫的解锁而自己的app不能。实在让人捉急。现在咱也可以酷炫一把了。当用户打开... 阅读全文

posted @ 2014-10-10 19:27 Mr 布鲁斯 阅读(1617) 评论(0) 推荐(0)

Multipeer Connectivity Resources - Community
只有注册用户登录后才能阅读该文。

posted @ 2014-09-17 17:49 Mr 布鲁斯

基于Xcode5的本地化
摘要:一、程序名国际化1、首先添加应用对多语言支持的国际化文件点击工程根目录,然后选择PROJECT下的项目,然后选择Info选项卡,在底部可以看到Localizations,点击“+”号,可以添加国际化文件,例如添加一个简体中文Chinese(Simplified),弹出对话框后点击确定,此时在Supp... 阅读全文

posted @ 2014-08-21 17:06 Mr 布鲁斯 阅读(385) 评论(0) 推荐(0)

Local Notification
摘要:大家都知道Push Notification,这个东西需要联网才可以用。iOS4起,苹果引入了一种可以在设备内部引发的notification。不需要复杂的服务器编程,或其他复杂的配置。这个技术就是Local Notification。Local notificaton可以在用户设定里定时触发。甚至... 阅读全文

posted @ 2014-08-07 14:31 Mr 布鲁斯 阅读(1151) 评论(0) 推荐(0)

在APP中集成iAd Banner展示广告盈利
摘要:如果你已经做了一款超牛X的APP。你也许还有一件是需要操心。APP够好了,怎么盈利呢?你可以对下载你的APP的用户收费。也可以完全的免费,然后在APP里放广告来实现盈利。现在来说,除非一款APP真的是非用不可的,或者很有名,在要不就是很好玩的游戏。否则,用户一般是不会付费的。明智的选择是免费,集成广... 阅读全文

posted @ 2014-07-29 20:03 Mr 布鲁斯 阅读(1398) 评论(0) 推荐(1)

Swift语法快速索引
摘要:在WWDC的演示中就可以看出来Swift这个更接近于脚本的语言可以用更少的代码量完成和OC同样的功能。但是对于像我一样在战争中学习战争的同学们来说,天天抱着笨Swift Programming Language Reference之类的大部头看不实际。毕竟还是要养家糊口的。而且,那么1000+页内容... 阅读全文

posted @ 2014-07-17 18:12 Mr 布鲁斯 阅读(1506) 评论(1) 推荐(0)

iBeacon的第一篇(基于Swift实现)
摘要:低功耗蓝牙技术现在几乎是只能手机的标配。随着这一技术的发展,苹果在2013年WWDC大会上,苹果推出iBeacon技术。该技术允许开发人员开发能够使用iBeacon硬件传感器的iOS应用程序,来为相应的应用程序提供更加精准的位置信息。2014年WWDC大会上,苹果表示,对iBeacon技术进行了改善... 阅读全文

posted @ 2014-07-16 17:19 Mr 布鲁斯 阅读(3224) 评论(5) 推荐(3)

Swift & Objc 在同一个项目中的使用
摘要:在WWDC大会中发布了Swift让人眼前一亮。终于加了很多的现代编程语言该有的东西。很早年以前玩C#3.0+的时候这些差不多类似的已经用的烂熟的东西终于一点一点的在看Swift Programming Language的时候再唤醒。Swift较之于OC(Objective-C)在愈发上几乎是一门新的... 阅读全文

posted @ 2014-07-14 15:52 Mr 布鲁斯 阅读(1199) 评论(0) 推荐(0)

ObjC正则表达式验证
摘要:试过ObjC的regkit这个框架。也用过内置的正则表达式验证。最后发现有个非常简单的方法就可以做到验证正则表达式。那就是NSPredicte这个类提供的方法。这里有验证邮箱地址的正则为例:NSString *emailRegEx = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-... 阅读全文

posted @ 2014-06-30 14:59 Mr 布鲁斯 阅读(511) 评论(0) 推荐(0)

NSPredicate过滤数组数据
摘要:NSPredicate编写软件时,经常需要获取一个对象集合,然后删除不满足条件的对象,保留符合条件的对象,从而提供一些有意义的对象。Cocoa提供了一个名为NSPredicate的类,他用于指定过滤器的条件。可以创建NSPredicate对象,通过该对象准确地描述所需的条件,对每个对象通过谓词进行筛... 阅读全文

posted @ 2014-06-15 20:43 Mr 布鲁斯 阅读(2141) 评论(0) 推荐(0)

iOS Programming Recipe 6: Creating a custom UIView using a Nib
摘要:iOS Programming Recipe 6: Creating a custom UIView using a NibJANUARY 7, 2013BYMIKETT12 COMMENTSCreating a custom UIView using a NibAssumptionsYou are... 阅读全文

posted @ 2014-04-30 03:20 Mr 布鲁斯 阅读(529) 评论(0) 推荐(0)

How do I avoid capturing self in blocks when implementing an API?
摘要:Short answerInstead of accessingselfdirectly, you should access it indirectly, from a reference that will not be retained.If you're not using Automatic Reference Counting (ARC), you can do this:__block MyDataProcessor*dp = self;self.progressBlock =^(CGFloat percentComplete){[dp.delegate myAPI:dp 阅读全文

posted @ 2014-01-10 18:51 Mr 布鲁斯 阅读(330) 评论(0) 推荐(0)

iOS应用开发之Persistence持久化[转]
摘要:持久化(Persistence)持久化(Persistence)意思就是当你退出app的时候它还会存在。NSUserDefaults就是一个非常简单的持久化方案,不过这有限制,它只能是很小的东西,通常是些用户选项。如何把那些大数据的东西持久化?第一个方法,把东西持久化的第一个简单的方式有点像用NSUserDefaults里的property list来实现的进化版,property list是我们自定义的一个概念,是NSArray、NSDictionary、NSNumber、NSString、 NSDate和NSData的组合。所有以上这些都有API可以用来保存,NSUserDefaults也 阅读全文

posted @ 2013-11-27 21:43 Mr 布鲁斯 阅读(605) 评论(0) 推荐(0)

iOS基础教程:在建好的项目中加入CoreData[转]
摘要:这几天在做一个ios的小项目,项目中需要对数据进行基本的增删改查操作。于是就想用一把CoreData。但在创建项目初期,没有包含进CoreData。于是就在已建好的项目中加入CoreData。由于第一次用CoreData,各方面还不是很熟悉,在网上爬文,找到了一篇关于这方面的文章(http://www.iteye.com/topic/1017633)。于是,自己在这篇文章的基础上经过一天的研究,特把自己出错的地方进行简单的总结。并把步骤完善一下。1.如果想在已建好的项目中加入CoreData,首先需要引入CoreData FrameWork。这里需要先点击target,然后再点击Build P 阅读全文

posted @ 2013-11-27 21:40 Mr 布鲁斯 阅读(362) 评论(0) 推荐(0)

导航