文章归档

在OC项目中使用Swift模块续

iOS Simulator Screen Shot 2014年8月24日 下午8.41.31

其实在很早期的文章里(Objective-C和Swift混合编程开发(一)http://blog.diveinedu.net/objective-c-swift-framework-dev/)已经介绍过了。但还是有许多同学问这个地方,所以干脆在这里再单独介绍一下。

第一、用Xcode 6创建一[......]

Read more

标签: , , , ,
文章分类 iOS 8开发

让Playground支持UIKit框架

Xcode 6新增了Playground用来学习和测试Swift代码。它能够实时的看到代码的效果,包括变量、终端输出甚至是Cocoa框架中的UI控件,而苹果在WWDC 2014上还演示了SpriteKit框架在Playground中的使用。不过默认情况下Playground只支持Mac的Cocoa框[......]

Read more

标签: , , , ,
文章分类 iOS 8开发

创建可以在Interface Builder中渲染的自定义视图

Xcode 6加了一个新特性,让开发着可以创建自定义控件,并且可以在Interface Builder中显示效果! 程序猿们再也不用猜测自定义控件的样子了!

1 . 创建一个包含自定义视图的框架

创建一个iOS应用程序框架File > New > Target,选择Cocoa Tou[......]

Read more

标签: , , , ,
文章分类 iOS 8开发

Swift编程高级教程(八)闭包

闭包

闭包是一个独立的函数功能代码段,我们可以在代码之间当作变量那样使用和传递他。Swift里的闭包和Apple的C语言和Objective-C语言里的block以及其他语言里的lambda表达式非常类似。

闭包可以capture在上下文中的任何常量和变量并在其定义内存储其引用,这就是所谓的闭合[......]

Read more

标签: , , , , , , , , , , , , , , ,
文章分类 iOS 8开发

Swift编程高级教程(五) 函数

函数

函数是一个执行特定任务的自包含代码块。可以给函数指定一个名字来标识它,需要的时候通过名字“调用”它来执行任务。

Swift使用一个统一的语法来表示简单的C语言风格的函数到复杂的Objective-C语言风格的方法。函数参数可以有默认值,并且能够指定为输入输出(in-out)参数,在函数里进[......]

Read more

标签: , , , ,
文章分类 iOS 8开发

Swift中类型转换小坑

Swift中苹果用let和var定义常量和变量,结果让许多人误以为这是一门弱类型的语言。实际上,文档里面指明了,Swift是一门强类型的语言。并且比Objective-C还要严格。只不过是加上了一个类型推导的特性,如果能够从初始值推导出变量的类型,这就称为该变量的类型。如:

var age = 2[......]

Read more

标签: , , , ,
文章分类 iOS 8开发

Swift编程高级教程(三)集合类型-字典

集合类型—字典

Swift语言提供了两种集合数据类型:数组和字典,数组是一系列相同类型的变量值有序存储;字典是一系列相同类型的变量值的无序存储,可以通过一个唯一标识符(键)来引用和查找。

数组和字典总是能识别自己所能够存储的键值的类型,就是说,我们不能够往这两个容器内插入错误的类型。显式类型声明[......]

Read more

标签: , , , , , , , ,
文章分类 iOS 8开发

Swift编程高级教程(四)流程控制-分支语句

条件判断语句包括ifswitch

if语句

最简单的形式就是一个if语句,当if的判断条件为true的时候,执行if里面的语句:

var temperatureInFahrenheit = 30
if temperatureInFahrenheit <= 32 {[......]

Read more

标签: , , , , ,
文章分类 iOS 8开发

Swift编程高级教程(四)流程控制-循环语句

Swift提供C语言类似的流程控制结构。它使用forwhile执行重复操作;ifswitch实现分支判断;breakcontinue进行跳转。

除了C语言中的for-condition-increment循环形式,Swift还提供for-in快速循环,使得对数组、字典、范围、字符串或其它的序[......]

Read more

标签: , , , , , , , ,
文章分类 iOS 8开发

Swift编程高级教程(二)变量与常量下

简化setter的声明

如果没有为计算属性的setter的新值指定名字,则默认使用newValue。下面是Rect结构体的另外一种写法:

struct AlternativeRect {
    var origin = Point()
    var size = Size()[......]

Read more

标签: , , , , , ,
文章分类 iOS 8开发