ios - 为什么indexPath.row在这里不起作用?

标签 ios swift uitableview segue

我将第一个 TableView var savingUrls 中的值添加到第二个 TableView 中 varDetailsInSection 的第一部分。在prepareForSegue中,Xcode显示“unresolved Identifier for 'indexPath'。我应该如何修改代码?

在第一个 View Controller 中:

var folderNames = [String]()

var savedUrls = [String]()

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

    let url = savedUrls[indexPath.row]

    self.performSegueWithIdentifier(segueToDetailsTable, sender: url)

}

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

    if segue.identifier == segueToDetailsTable {

        let detailsVC = segue.destinationViewController as! DetailsViewController

        detailsVC.detailsInSection[0].append(savedUrls[indexPath.row])

    }   
}

在第二个 View Controller 中:

var sectionTitles = ["WebSite", "Date Saved", "Document Used","Add Notes"]

var detailsInSection = [[String]() , [NSDate]() , [AnyObject]() , String]() ]

最佳答案

indexPath 不是定义或传递到 prepareForSegue 的变量。不过,你走在正确的轨道上。由于您在 performSegue... 中将 url 作为发送者传递,因此您不需要 indexPath 来引用 url。您可以检查 sender 是否为 String 并使用 sender 作为所选的 url

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

    let url = savedUrls[indexPath.row]

    self.performSegueWithIdentifier(segueToDetailsTable, sender: url)

}

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

    if let url = sender as? String where segue.identifier == segueToDetailsTable {

        let detailsVC = segue.destinationViewController as! DetailsViewController

        detailsVC.detailsInSection[0].append(url)

    }   
}

关于ios - 为什么indexPath.row在这里不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36770237/

相关文章:

iphone - 用于 iOS 应用程序的预测字典文本输入 API/框架

ios - 快速多级导航看不到后退按钮

ios - CoreML模型 undefined symbol 错误

ios - 如何在 swift 中为 Post 请求创建 JSON Body

ios - 为什么这个 iAd 没有正常消失?

ios - 如何使用 Swift 访问 healthkit 中锻炼的元数据

swift - 错误: Cannot convert value of type 'UInt64' to expected argument type 'DispatchTime'

ios - 在 UISearchDisplayController 中添加 UISegmentedControl

iphone - UITableviewcell 单元格之间的间距

iphone - Nib 中的非全屏表格 View