随笔分类 -  iOS开发应用

摘要:Trailing Closures(尾闭包) 如果你需要将一个闭包表达式作为参数传递给一个函数,而且参数的位置刚刚好是函数的最后一个,你这个闭包表达式又很长,那么使用尾闭包就显得非常有效(有用).尾闭包是一个写在跟随函数()外面(或后面)的闭包表达式: func someFunctionThat... 阅读全文
posted @ 2014-09-07 10:14 老蔡居士 阅读(185) 评论(0) 推荐(0)
摘要:Inferring Type From Context 上下文类型判断 因为排序的闭包是作为一个参数传递给函数,因此Swift可以判定这个参数的类型和根据sort函数第二个参数判断返回值的类型.这个参数的类型是(String, String) -> Bool,这意味着 String,Strin... 阅读全文
posted @ 2014-07-30 21:47 老蔡居士 阅读(371) 评论(0) 推荐(1)
摘要:在OC中,虽然使用NSThread的实际场景不多,但如果能够在学习多线程的时候,仔细的了解NSThread的方法,可以对后面深入学习GCD与NSOperation会大有帮助.今天讨论一下关于线程的状态一些情况: 一个线程在内存中的状态,NSThread提供了大体三种处理方式:取消(cancel),... 阅读全文
posted @ 2014-07-25 21:58 老蔡居士 阅读(1176) 评论(0) 推荐(0)
摘要:在XMPP开发中,使用XMPPStream进行连接服务器后,验证过程中,比较常见的一个错误是.尤其作为初学者(笔者就是这样的),经常会因为这个问题弄得不着边际的凌乱.现在笔者将自己的遇到的问题定期整理,总结错误,希望对日后的使用有所参考,同时希望能够对也是在这方面的初学者有所提醒.服务器的测试版本为... 阅读全文
posted @ 2014-07-23 19:32 老蔡居士 阅读(5504) 评论(4) 推荐(0)
摘要:Closures (闭包) 闭包是一段包含自身功能的代码块,它可以在代码中传递.在Swift中,闭包的概念与C和OC中的block相似,与其他语言的lambdas相似. 当常量和变量在闭包中定义的时候,闭包可以获取(capturing)和存储常量和变量的引用,这像是完全包裹着变量和常量,因此,取... 阅读全文
posted @ 2014-07-21 18:24 老蔡居士 阅读(673) 评论(0) 推荐(0)
摘要:Function Types as Return Types (函数类型作为返回值类型) 一个函数的类型可以作为另一个函数的返回值类型.可以在一个函数的返回值箭头后面写上一个完整的函数类型. 例如: 下面的例子定义了两个简单的函数,分别为stepForward 和 stepBackward.其... 阅读全文
posted @ 2014-07-19 20:44 老蔡居士 阅读(656) 评论(0) 推荐(0)
摘要:In-Out Parameters (全局参数) 像前面描述的参数变量,只能在函数体内进行修改,如果你需要函数修改的它的参数值,并且希望这些改变在函数调用结束后仍然有效,可以定义使用全局参数. 定义全局参数使用关键字inout,全局参数的值在函数调用的时候进行传递,在函数体内进行修改,最后函数回... 阅读全文
posted @ 2014-07-17 19:25 老蔡居士 阅读(568) 评论(0) 推荐(0)
摘要:Default Parameter Values (参数默认值) 在定义函数的时候,你可以给任何参数定义一个默认的值,如果定义了默认值,在调用这个函数的时候,你可以忽略这个参数. 注意: 设置参数默认值的时候,需要按照函数的参数列表最后的开始,这可以确保在调用函数的时候,即使没默认值的参数... 阅读全文
posted @ 2014-07-16 21:49 老蔡居士 阅读(674) 评论(0) 推荐(0)
摘要:Functions with Multiple Return Values (多个返回值的函数) 可以使用元组类型作为函数的返回值类型,这样可以将多个返回值组成一个复合值来返回. 下面的例子定义了一个叫做count的函数来计算字符串里的字符(元音,辅音和其它字符数量): func cou... 阅读全文
posted @ 2014-07-14 20:28 老蔡居士 阅读(630) 评论(0) 推荐(0)
摘要:Functions (函数) 函数是一个执行特定任务的代码段.通过名称来标识和调用它们. 在Swift中,每个函数都有类型,包括函数的参数类型和返回值类型.这些类型与Swift中的其他类型使用起来一样,这使得函数可以作为参数传递给另一个函数,以及可以从一个函数中返 回函数,一个函数也可以写在另... 阅读全文
posted @ 2014-07-13 22:13 老蔡居士 阅读(622) 评论(1) 推荐(0)
摘要:在iOS中,让NSThread 启动方法有三种:1.+ (void)detachNewThreadSelector:(SEL)aSelectortoTarget:(id)aTargetwithObject:(id)anArgument 创建一个新线程,并在线程的入口点使用指定的SEL方法(就是给T... 阅读全文
posted @ 2014-07-12 09:41 老蔡居士 阅读(612) 评论(0) 推荐(0)
摘要:Labeled Statements (标签语句) 循环或者switch语句可以嵌套其他的循环或者switch,这样在Swift中可以创建复杂的流程控制结构.循环或者switch语句都可以通过break语句来永久的结束,因此,有时候需要显式的 表明在循环或者switch中你需要break的语句.... 阅读全文
posted @ 2014-07-10 19:45 老蔡居士 阅读(688) 评论(0) 推荐(0)
摘要:Break break语句会立刻结束整个流程控制的执行.break语句可以在switch语句或者循环语句中帮助你提前结束循环或者switch的执行.Break in a Loop Statement (循环语句中的break) 当在循环语句中使用break,会立刻结束循环的执行,并且跳转到循环体... 阅读全文
posted @ 2014-07-09 19:49 老蔡居士 阅读(534) 评论(0) 推荐(0)
摘要:关于多线程在iOS中的重要性,就不废话了.就一个字:重要 ! ^_^iOS中常用的三种多线程方式:NSThread , GCD, NSOpertaion虽然NSThrea排在第一位(几乎所有的介绍多线程的书籍都是这么排序),但用的最少,原因:没有后面的两个小弟用起来体贴.作为多线程的大哥,NSThr... 阅读全文
posted @ 2014-07-09 18:42 老蔡居士 阅读(399) 评论(0) 推荐(0)
摘要:麻雀虽小,五脏俱全.在平时的项目中,任何一个模块或者功能里其实都隐藏着许多我们平时注意不到的知识点,其实很多东西大家每天都在用,但很多时候都是知其然,而不知其所以然.时间久了,也就懒得去想到底是什么原因了,怎么实现的之类.回想自己的学习路程,也基本都这样混过来,实在愧对光阴,近日抽空,查看过往笔记,... 阅读全文
posted @ 2014-07-08 21:55 老蔡居士 阅读(1190) 评论(2) 推荐(0)
摘要:Value Bindings (绑定值) 在switch的case中可以绑定一个或者多个值给case体中的临时常量或者变量,这个成为绑定值. 代码样例: let anotherPoint = (2, 0) switch anotherPoint { case (let x... 阅读全文
posted @ 2014-07-07 20:23 老蔡居士 阅读(661) 评论(1) 推荐(0)
摘要:Switch 一个switch语句里包含一个值,并且用这个值与其他几个可能的匹配模式进行比较,然后根据成功匹配上的模式,执行相应的代码块.switch语句提供了比if语句更多的选项来相应多种潜 在的情况. 最简单的一个例子: switch some value to consider ... 阅读全文
posted @ 2014-07-05 19:13 老蔡居士 阅读(665) 评论(0) 推荐(0)
摘要:Do-While while循环的另一个版本是do-while循环,它在判断条件之前,先执行一遍循环体,然后再次执行循环体,直到条件成为false. do-while循环的通过格式: do { statements } while condition 我们再用蛇和梯子... 阅读全文
posted @ 2014-07-04 20:45 老蔡居士 阅读(396) 评论(0) 推荐(0)
摘要:For-Condition-Increment (For 循环) 除了for-in循环之外,Swift还支持传统C语言的for循环(使用一个条件和一个增量): for var index = 0; index < 3; ++index { println("index is \(... 阅读全文
posted @ 2014-07-03 23:24 老蔡居士 阅读(572) 评论(0) 推荐(0)
摘要:Mutability of Collections (可变集合) 字典和数组都是在一个集合里储存多个值.如果你创建数组或字典后赋值给一个变量,那么这个集合就是可变的( mutable).这就意味着你在创建这个集合之后,依然可以改变这个集合的 大小,添加元素到集合里或者删除已有的元素.相反地,如果... 阅读全文
posted @ 2014-07-02 20:02 老蔡居士 阅读(648) 评论(0) 推荐(0)