2015-06-28 4 views
0

У меня есть раскадровка, настроенная с помощью контроллера View. контроллер представления разделен на две половины, одна половина - сборщик дат UI, а другой - табличный вид. Когда я установил контроллер представления в качестве делегата и источник данных, я получаю следующую ошибкуДобавление представления таблицы к ошибке контроллера UI View

reason: '-[UIViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x7fdb29b4d9e0' 

Мой Посмотреть контроллер определяется следующим образом

import Foundation 
import UIKit 

class CustomViewController: UIViewController , UITableViewDelegate , UITableViewDataSource{ 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Do any additional setup after loading the view, typically from a nib. 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 


    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{ 

     return 3; 
    } 


    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{ 

     var sampleCell = tableView.dequeueReusableCellWithIdentifier("cell") as! UITableViewCell 

     return sampleCell; 

    } 



} 

ответ

2

Вы уверены, что класс вашего представления является классом вашего стола? Я получил ту же ошибку, когда забыл установить класс моего представления.

+0

вы были правы! – user1801279

+0

Рад, что я помог :) И спасибо теперь могу прокомментировать всюду хаха :) –

0

У вас есть свойство IBOutlet, что связано с UITableView в раскадровке/nib? Контроллер представления установлен как делегат и dataSource для представления таблицы?

+0

no IBOutlets, определенные в раскадровке. контроллер представления задан как источник данных и делегат, когда я использую весь контроллер представления в качестве раскадровки, он отлично работает, он терпит неудачу, когда я разделяю контроллер вида, как я уже упоминал выше, – user1801279

0

Вам необходимо установить выход для UITableView и установить делегат:

Тогда в viewDidLoad установить источник данных в Tableview и делегировать себе, поскольку ViewController реализует протокол.

Смежные вопросы