使用Xcode6-Beta 创建一个swift空的工程,新建一个UIViewController,语言选择swift。
在MainViewController.swift 添加如下代码,声明变量及click事件,变量和函数的写法与oc有些改变,变量声明默认是strong,
class="brush:objc;gutter:true;">@IBOutlet var titleLabel:UILabel? @IBOutlet var button:UIButton?//@IBOutlet weak var button:UIButton?/ @IBAction func btnClick(AnyObject) { }
在xib中拖入一个UIButton和UILabel,进行对应的绑定,操作如同之前Xcode。
添加click事件内容,例子中弹出个UIAlertView,delegate为self,delegate的写法直接逗号接在继承父类后面,如下,
class MainViewController: UIViewController,UIAlertViewDelegate{}
UIAlertView的目前成功测试的初始化代码如下
let alert = UIAlertView() alert.title = "" alert.delegate = self alert.message = "Hello Apple" alert.addButtonWithTitle("OK") alert.addButtonWithTitle("Cancel") alert.show()
尝试的其他的初始化api ,均执行异常
// let alert = UIAlertView(title: "title", message: "Hello Apple", delegate: self, cancelButtonTitle:"Cancel") // let alert = UIAlertView(title: "title", message: "Hello Apple",delegate: self, cancelButtonTitle: "Cancel",otherButtonTitles:"OK");
实现UIAlertView的按钮点击事件delegate
func alertView(alertView: UIAlertView!, clickedButtonAtIndex buttonIndex: Int) { switch buttonIndex { case 0: println("alertView Ok!") case 1: println("alertView cancel!") default: println("alertView cancel!") } }
由此可以看出,switch不需要break,以前的有种写法目前不能使用了
case 0: case 1: println("alertView cancel!")
break; //在swift中可替换为 case 0..2: println("alertView Ok!")