如何获取 Swift 中选定行的值?

How to get a value of selected row in Swift?

我的 swift 应用程序中有一个 Table 视图控制器。如何获取选定行(单元格)的值?
例如,我想在用户单击行时显示带有警报的选定行的值。

为此使用此功能:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
 NSLog("You selected cell #\(indexPath.row)!")
}

只需实现方法:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    var alert = UIAlertView()
    alert.delegate = self
    alert.title = "Selected Row"
    alert.message = "You selected row \(indexPath.row)"
    alert.addButtonWithTitle("OK")
    alert.show()
}

只要您 select 一行,就会触发此委托方法。通过 NSIndexPath 您可以得到确切的 sectionrow 用户 selected。为了确保调用该方法,您需要确保设置了 tableview 的 delegate

但是由于您使用的是 UITableViewController 这应该已经自动为您完成了。

有关更多文档,请参阅:tableView:didSelectRowAtIndexPath

   func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        var selectedItem = indexPath  
        print (selectedItem.row) 
    }

这个方法你可以搞定 SWIFT 3.0 代码

Swift 4:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    ...
}