首先必須讓Controller符合UITableViewDelegate , UITableViewDataSource的規範,並將table元件的delegate與datasource指定為自己這個controller
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| class OptionViewController: UIViewController , UITableViewDelegate , UITableViewDataSource { @IBOutlet weak var UIOptionTable: UITableView! var data : [String]!; override func viewDidLoad() { super.viewDidLoad(); self.UIOptionTable.delegate = self; self.UIOptionTable.dataSource = self;
data = []; data.append("便當"); data.append("雞腿便當"); data.append("排骨便當"); } }
|
再來override幾個主要的事件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| func numberOfSectionsInTableView(tableView: UITableView!) -> Int { return 1 }
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return data.count; }
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let identifier = "cellid";
var cell:UITableViewCell? = uitable.dequeueReusableCellWithIdentifier(identifier) as? UITableViewCell; if(cell == nil){ cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: identifier); }
cell?.textLabel?.text = data[indexPath.row]; return cell!; }
|
結果~