//// ViewController.swift// SwiftTableView//// Created by fe on 2017/3/3.// Copyright © 2017年 fe. All rights reserved.//import UIKit//swift遵守協(xié)議只需要跟在父類之后,使用逗號(hào)隔開(kāi)class ViewController: UIViewController { //1.創(chuàng)建tableView對(duì)象 lazy var tableView : UITableView = UITableView() override func viewDidLoad() { super.viewDidLoad() //初始化UI setUpUI() } }/* extension ViewController {} 相當(dāng)于OC中的類別,可以把一些方法放在里面,不能寫屬性 */// MARK:-初始化UI的擴(kuò)展extension ViewController{ ///初始化UI func setUpUI() { //2設(shè)置tableView的frame tableView.frame = view.bounds //3.添加到控制器view view.addSubview(tableView) //4設(shè)置數(shù)據(jù)源 tableView.dataSource = self //5設(shè)置代理 tableView.delegate = self }}/* extension ViewController {} 相當(dāng)于OC中的類別,可以把一些方法放在里面,不能寫屬性 */// MARK: tableView的數(shù)據(jù)源和代理的擴(kuò)展 (這里相當(dāng)于OC中的 #PRagma 書簽)extension ViewController :UITableViewDataSource,UITableViewDelegate{ func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 20; } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { //1創(chuàng)建cell let identifier : String = "identifier" var cell = tableView.dequeueReusableCell(withIdentifier: identifier) if cell == nil { //在swift中使用枚舉類型方式 1>枚舉類型.具體類型 2> .具體類型 cell = UITableViewCell(style: UITableViewCellStyle.value1, reuseIdentifier: identifier) } //2設(shè)置數(shù)據(jù) cell?.textLabel?.text = "swiftTableView" cell?.detailTextLabel?.text = "/(indexPath.row)" //3返回cell return cell!//在這個(gè)地方返回的cell一定不為nil,可以強(qiáng)制解包 } func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { MyLog(message: indexPath.row) }}
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注