0.1.1 Playground开发体验
// 创建一个view
let v = UIView(frame: CGRect(x: 100, y: 100, width: 100, height: 100))
// 给view 添加颜色
v.backgroundColor = UIColor.redColor()
// 添加view
view.addSubview(v)
// 创建一个按钮
let button = UIButton(type: .ContactAdd)
// 添加点击事件
button.addTarget(self, action: "buttonClick", forControlEvents: UIControlEvents.TouchUpInside)
// 添加button
v.addSubview(button)
0.1.2 项目开发体验
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// 创建一个View
let v = UIView(frame: CGRect(x: 100, y: 100, width: 100, height: 100))
// 给View添加背景颜色
v.backgroundColor = UIColor.redColor()
// 添加view
view.addSubview(v)
// 创建一个按钮
let btn = UIButton(type: UIButtonType.ContactAdd)
// 添加点击事件
btn.addTarget(self, action:Selector("buttonClick"), forControlEvents: UIControlEvents.TouchUpInside)
// 添加button
v.addSubview(btn)
}
func buttonClick(){
print("按钮被点击了")
}
}
小结:
在 Swift 中没有了 main.m,@UIApplicationMain 是程序入口
在 Swift 中只有 .swift 文件,没有 .h/.m 文件的区分
在 Swift 中,一个类就是用一对 {} 括起的,没有 @implementation 和 @end
每个语句的末尾没有分号,在其他语言中,分号是用来区分不同语句的
在 Swift 中,一般都是一行一句代码,因此不用使用分号
与 OC 的语法快速对比
在 OC 中 alloc / init 对应 ()
在 OC 中 alloc / initWithXXX 对应 (XXX: )
在 OC 中的类函数调用,在 Swift 中,直接使用 .
在 Swift 中,绝大多数可以省略 self.,建议一般不写,可以提高对语境的理解(闭包时会体会到)
在 OC 中的 枚举类型使用 UIButtonTypeContactAdd,而 Swift 中分开了,操作热键:回车 -> 向右 -> .
Swift 中,枚举类型的前缀可以省略,如:.ContactAdd,但是:很多时候没有智能提示
监听方法,直接使用字符串引起
在 Swift 中使用 print() 替代 OC 中的 NSLog