標籤:swift uikit playground
Playground是隨著Swift在WWDC2014推出的,從字面意思來理解,"playground"就是操場,遊樂場的意思。在Swift中,這個"遊樂場",可以一邊寫代碼,一邊預覽效果,實現“所見即所寫”,這給程式員帶來的方便是不言而喻的,通過兩張圖來對比:
從6步,簡化成兩步,是不是很酷?除了酷,Playground是可以應用在實際開發中的,在兩個地方使用效果很好:用來快速預覽介面控制項效果,用來調試複雜演算法。
現在來點乾貨,
預覽imageview
let imageNames = [NSImageNameUser,NSImageNameUserAccounts,NSImageNameUserGroup]let images = imageNames.map{NSImage(named:$0)};imageslet image = images[0]let imageView = NSImageView(frame:NSRect(x: 0,y: 0,width: 512,height: 512))imageView.image = imageimageView.imageScaling = .ImageScaleProportionallyUpOrDown
預覽tableview
import UIKitvar str = "Hello, playground"class DataSource: NSObject,UITableViewDataSource{ func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int{ return 4 } func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell!{ let row = indexPath.row let style = UITableViewCellStyle.fromRaw(row) let cell = UITableViewCell(style: style!,reuseIdentifier: nil) //let cell = UITableViewCell(style: .Default, reuseIdentifier: nil) cell.textLabel.text = "Text1" if let detailTextLabel = cell.detailTextLabel{ detailTextLabel.text = "Detail Text" } return cell } }let ds = DataSource()let tableView = UITableView(frame: CGRect(x:0, y:0, width: 320,height: 240), style: .Plain)//let tableView = UITableView(frame: CGRectMake(0.0,0.0,320.0,240.0), style: .Plain)tableView.dataSource = dstableView.reloadData()
Playground支援的資料類型:
Playground的局限:
1 無法直接將playground檔案直接用到工程中,但可拷貝粘貼code進工程。
Q&A
1 匯入UIKit失敗
在playground中輸入
import UIKit
出現"No such module UIKit"錯誤,解決方案是,將platform 設為iOS(預設是OS X)
開啟File Inspector,如設定