如何获取我在 TableViewController 中单击的行(单元格)的索引 [重复]

Posted

技术标签:

【中文标题】如何获取我在 TableViewController 中单击的行(单元格)的索引 [重复]【英文标题】:How to get the index of the row (cell) I clicked on in TableViewController [duplicate] 【发布时间】:2019-02-21 21:06:27 【问题描述】:

我是 Swift 的初学者,这可能是基本的东西,但我需要获取我在 tableview 中单击的行(单元格)的索引。

我有带有预定义方法的 TableViewController,但我找不到我要找的东西。

行(单元格)是字符串数组中的字符串。

【问题讨论】:

请查看 UITableViewDelegate 的文档。 或者查看这个站点上的几个重复项。不过更喜欢文档。 如果您有解决方案,请将其作为答案发布。不要将其添加到您的问题中。见Ask questions, get answers, no distractions 【参考方案1】:

实现表格视图委托,然后您可以使用方法tableView(_:didSelectRowAt:):https://developer.apple.com/documentation/uikit/uitableviewdelegate/1614877-tableview检测您的索引单元格

具体来说:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 
    print("your row number: \(indexPath.row)")

【讨论】:

谢谢。我只想以 Int 形式获取索引。有什么想法吗? indexPath.row 索引路径的行元素的值。如果您的表格只有一个部分,那么您可能会错过 indexPath.section 并且不要考虑它 @MapeSVK:我更新了我的答案。您可以使用 indexPath.row 获取您的 Int 索引。希望这会有所帮助。 @qtngo 是的,我已经有了。我发布了答案。无论如何,谢谢你【参考方案2】:
override func tableView(_ tableView: UITableView,
                        didSelectRowAt indexPath: IndexPath) 
    print(indexPath.row)

【讨论】:

您应该接受告诉您如何执行此操作的其他答案之一,而不是发布您自己的答案。 @rmaddy 你应该更加细心。在我发布我从 cmets 获得的解决方案后,他从“特别”这一点编辑了他的答案,其中一个人告诉我将两件事连接在一起。他只是在寻找声誉,他的目标是被检查。谢谢。【参考方案3】:

您的 TableView 包含 TableViewCells。触摸单元格时的所有逻辑都可以编程

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 

更新indexPath.row 将为您获取所选 tableviewcell 的索引

【讨论】:

我需要获取 Int 形式的索引。你能告诉我,怎么做吗?你没有提供答案,只是不要追求声誉 抱歉,阅读了实际问题,更新了答案。更好? 不,我得到的是表中的所有索引,而不是我点击的那个 @Ricardo 您在回答中提到的方法与粘贴/选择单元格无关。调用它是为了您可以提供要在屏幕上绘制的单元格。 @Losiowaty 能否请您提供一些提示或我可以用来实现目标的方法名称?谢谢

以上是关于如何获取我在 TableViewController 中单击的行(单元格)的索引 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

UITableview 不通过 willdisplaycell 选择单元格

如何获取我在 TableViewController 中单击的行(单元格)的索引 [重复]

如何使用 GPS 获取我在 Android 中的当前位置?

我在哪里可以获得有关如何使用 Apollo 和 GraphQL 获取数据的文档?

当我在 Firebase 中找到要获取的数据时如何停止 forEach? [复制]

如何获取我在 config.xml 中定义的版本字符串