0%

[swift] 製作IOS Table (1)基本的Tabel語法

首先必須讓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
//這個table包含幾個section
func numberOfSectionsInTableView(tableView: UITableView!) -> Int {
return 1
}

//每個section有幾個row
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return data.count;
}

//每個row顯示的內容
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);
}

//indexPath.row 可以知道目前是要製作第幾列的view
cell?.textLabel?.text = data[indexPath.row];
return cell!;
}

結果~