繁体   English   中英

获取错误不明确地使用tableView(_:numberOfRowsInSection :)

[英]Getting error Ambiguous use of tableView(_:numberOfRowsInSection:)

我正在使用xcode 7 beta并且我已经从教程中找到了这个代码但是我使用UIViewController而不是UITableViewController有很多原因。 (我不知道这是否导致了这个具体问题)。 我已经得到了UIViewController设置,就像一个典型的UITableViewController但是我遇到了错误

模糊地使用'tableView(_:numberOfRowsInSection:)

这是我的代码

class ShoppingViewController: UIViewController {
var toDoItems:NSMutableArray = NSMutableArray()

override func viewDidAppear(animated: Bool) {

    var userDefaults:NSUserDefaults = NSUserDefaults.standardUserDefaults()

    var itemListFromUserDefaults:NSMutableArray? = userDefaults.objectForKey("itemList") as? NSMutableArray

    if ((itemListFromUserDefaults) != nil){
            toDoItems = itemListFromUserDefaults!
    }

    **self**.tableView.reloadData()
}

以及

if (segue != nil && segue!.identifier == "showDetail") {
    var selectedIndexPath:NSIndexPath = **self**.tableView.indexPathForSelectedRow()
    var detailViewController:DetailsViewController = segue!.destinationViewController as! DetailsViewController
    detailViewController.toDoData = toDoItems.objectAtIndex(selectedIndexPath.row) as! NSDictionary

}

候选人(根据XCode):

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return toDoItems.count
}


func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as UITableViewCell

    let toDoItem:NSDictionary = toDoItems.objectAtIndex(indexPath.row) as! NSDictionary
    cell.textLabel!.text = toDoItem.objectForKey("itemTitel") as? String

    return cell
}

升级到Xcode 7.1 beta后,我遇到了类似的问题。 我想知道这是否是测试中的错误? 有没有人找到解决方案?

更新 - 所以我在我的项目中解决了这个问题。 我必须为我的tableView设置IBOutlet,然后在该对象上执行reloadData。 例如,将IBOutlet设置为myItemsTableView,然后调用self.myItemsTableView.reloadData()并且工作正常。 在这个项目中,它需要myItemsTableView并重新加载,而不是通用命令tableView.reloadData()。

希望有所帮助。

properly. 确保已正确初始化 这解决了我同样的问题。

我遇到了类似的问题,我通过命名我的View Controller来解决其他问题。

SDK中必须有一个名为DetailsViewController或DetailViewController的视图控制器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM