Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.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 获取使用tableView时出现的错误(\uU:numberOfRowsInSection:)_Ios_Swift_Uitableview - Fatal编程技术网

Ios 获取使用tableView时出现的错误(\uU:numberOfRowsInSection:)

Ios 获取使用tableView时出现的错误(\uU:numberOfRowsInSection:),ios,swift,uitableview,Ios,Swift,Uitableview,我使用的是xcode 7 beta,我在教程中找到了这段代码,但是出于许多原因,我使用的是UIViewController而不是UITableViewController。(我不知道这是否导致了这个具体问题)。我得到了UIViewController设置,就像典型的UITableViewController一样,但是我遇到了错误 ”表视图(uuxNumberOfRowsInSection:)使用不明确 这是我的密码 class ShoppingViewController: UIViewCont

我使用的是xcode 7 beta,我在教程中找到了这段代码,但是出于许多原因,我使用的是
UIViewController
而不是
UITableViewController
。(我不知道这是否导致了这个具体问题)。我得到了
UIViewController
设置,就像典型的
UITableViewController
一样,但是我遇到了错误

”表视图(uuxNumberOfRowsInSection:)使用不明确

这是我的密码

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):


升级到Xcode 7.1 beta版后,我也遇到了类似的问题。我想知道这是否是测试版中的一个bug?有人找到解决办法了吗

更新- 所以我在我的项目中解决了这个问题。我必须为我的tableView设置IBOutlet,然后在该对象上重新加载数据。e、 g.将IBOutlet设置为myItemsTableView,然后调用self.myItemsTableView.reloadData(),这样就可以了。在这个项目上,它需要myItemsTableView并重新加载,而不是通用命令tableView.reloadData()


希望对您有所帮助。

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

我有一个类似的问题,我通过将视图控制器命名为其他名称来解决


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

是否将
委托
数据源
设置为
表视图
?您似乎不符合
UITableViewDelegate
UITableViewDataSource
协议?@Bannings如何使其符合要求?请尝试以下操作:
class ShoppingViewController:UIViewController,UITableViewDataSource,UITableViewDelegate
@bannings修复了另一个与当前问题无关的问题,但我仍然感谢您的支持that@bannings请参阅我的最新问题
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
}