zoukankan      html  css  js  c++  java
  • 在 UIViewController 中手动增加 TableView 出现 Type 'SomeViewController' does not confirm to protocol 'UITableViewDataSource' 问题的解决办法

    许多时候我们都有在普通的继承自 UIViewController 的控制器中使用 TableView 的需求,这时候就需要当前控制器类继承 UITableViewDelegate 和 UITableViewDataSource,然后再初始化:

    @IBOutlet weak var firstTableView: UITableView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    
        firstTableView.delegate = self
        firstTableView.dataSource = self
    }
    

    这时候,firstTableView.dataSource = self 这一行会报错:

    Type 'SomeViewController' does not confirm to protocol 'UITableViewDataSource'
    

    解决方案如下:

    在该类中新增如下方法:

        func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
            return 3
        }
        func numberOfSectionsInTableView(tableView: UITableView) -> Int {
            return 1
        }
        func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
            let cell = tableView.dequeueReusableCellWithIdentifier("UserCenter", forIndexPath: indexPath) as UITableViewCell
            
            cell.textLabel.text = indexPath.row.description
            
            return cell
        }
    

    最终运行结果如下:

    Image

     
     
  • 相关阅读:
    查询中常用的扩展方法
    加载关联表的数据 显式加载
    加载关联表的数据 延迟加载
    加载关联表的数据 贪婪加载
    操作内存中的数据
    DBContext基础查询
    EF简单增删改查
    1- MySQL数据库基础快速入门
    1-3 Postman 注册账号与登录
    1-2 postman工具简介
  • 原文地址:https://www.cnblogs.com/Cheetah-yang/p/4669911.html
Copyright © 2011-2022 走看看