Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 不能调用";“注册类”;论Swift中的UITableView_Ios_Objective C_Uitableview_Swift - Fatal编程技术网

Ios 不能调用";“注册类”;论Swift中的UITableView

Ios 不能调用";“注册类”;论Swift中的UITableView,ios,objective-c,uitableview,swift,Ios,Objective C,Uitableview,Swift,对于Swift来说,这对我使用Objective-C很好。我不确定这是语法问题还是我的项目设置不正确 首先,这是我看到的错误(在JobsViewController的第5行,该行以self.tableView.registerClass开头): 无法使用类型为“(UITableViewCell.type,forCellReuseIdentifier:String)”的参数列表调用“registerClass” JobsViewController class JobsViewController

对于Swift来说,这对我使用Objective-C很好。我不确定这是语法问题还是我的项目设置不正确

首先,这是我看到的错误(在JobsViewController的第5行,该行以self.tableView.registerClass开头):

无法使用类型为“(UITableViewCell.type,forCellReuseIdentifier:String)”的参数列表调用“registerClass”

JobsViewController

class JobsViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {

    override func viewDidLoad() {
        super.viewDidLoad()
        self.tableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "Cell")
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

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

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

    func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {

    }

    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    }
}

谷歌并没有提供太多的帮助,希望能得到一些帮助

看起来您尚未在此表的情节提要中设置自定义类名。 您需要从下拉列表中选择JobsViewController。 然后你会得到

@IBOutlet weak var tableView: UITableView!
在你的代码中

 var cell : UITableViewCell = UITableViewCell()

 feedTableView.registerClass(cell.classForCoder, forCellReuseIdentifier: "cellidentifier")

尝试上面的代码行

Swift 3中效果很好

tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell")

对于Swift 4+,在包含列表的ViewController的ViewDidLoad中

self.listView.register(UITableView.self, forCellReuseIdentifier: "CellItentifier")
斯威夫特5 请使用like

self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell")

示例代码不完整,因为
JobsViewController
中没有属性
tableView
。JobsViewController可能应该从UITableViewController而不是UIViewController继承。
self.tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell")