在UIViewController中添加TableView

TableViewController定制性差,用TableView放在UIViewController里比较方便,但需要做点事情来使TableView包含于UIVIewController,以便于动态显示和操作TableView里的数据

  1. 继承一个UIViewController:ABC,并在StroyBoard新建一个UIViewController与之绑定
  2. 拖动新控件TableView到ABC,并拖动一个TableCell到TableView
  3. 将TableView和ABC绑定:
  4. 在ABC的实现代码中加一行:

    你看到的是非授权版本!爬虫凶猛,请尊重知识产权!

    转载请注明出处:http://conanwhf.github.io/2015/09/12/AddTableViewInUIViewController/

    访问原文「在UIViewController中添加TableView」获取最佳阅读体验并参与讨论

    @IBOutlet weak var XYZ: UITableView!

  • 点击TableView,右边检查器栏Connection->Referencing Outlets->New Referencing Outlets右边的小圆点,拖动至TableView上松开,选定XYZ
  1. 实现TableView必须有的基础代码:

    func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
    }
    

    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return N
    }
    注册CellID:
    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier(“TEST“, forIndexPath: indexPath) as! UITableViewCell
    return cell
    }
    此处虽然在类中添加,但不要加override前缀!

  2. 绑定Cell:StroyBoard中选中TableViewCell,右侧Attributes->Table View Cell->Identifier,填上TEST(与注册的ID保持一致)并回车。在总纲中检查能看到Cell的名字已经变成TEST
  3. 数据源等绑定Controller:StoryBoard中选中TableView,右侧检查器Connection->Outlets->dataSource&delegate拖动到页面上方XYZ图标(UIViewController)
  4. 完成,在TableView中加入控制代码可看到效果