如何获取 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
您可以得到确切的 section
和 row
用户 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) {
...
}
我的 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
您可以得到确切的 section
和 row
用户 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) {
...
}