【发布时间】:2020-08-01 14:54:58
【问题描述】:
我正在尝试获取我在视图控制器中使用此函数的单元格的indexpath。
func getIndex(cell : TableViewCell1) -> IndexPath
{
let x = cell.cellTextField.convert(CGPoint.zero, to: self.tableView)
let indexPath = self.tableView.indexPathForRow(at: x)
return indexPath!
}
它工作正常,但是当我尝试将此函数返回的值用于我的 IBAction 方法时:
@IBAction func tapButton(_ sender: UIButton) {
let indexPath1 = getIndex(cell: TableViewCell1)
}
我收到了这个错误
无法将“TableViewCell1.Type”类型的值转换为预期的参数类型“TableViewCell1”。
在这方面需要帮助。如果这是一个非常基本的问题,请原谅我,因为我是 swift 的初学者。
【问题讨论】:
-
不,我没有像 TableviewCell1 这样的变量名。我找不到我应该传递什么作为参数才能调用提到的函数并获取索引路径。
-
参数
cell必须是单元格(实例),而不是类型。顺便说一句,确定索引路径的几何数学是最糟糕的方法之一。 最快捷的方式是回调闭包。 -
getIndex 函数需要一个 TableViewCell1 的实例,但你传递了一个类 typeTableViewCell1
-
哦,我的错。基本上我已经尝试过另一种方法来使用自定义表格视图单元格中的单元格的“标签”来获取索引路径,如下所示:func textFieldDidBeginEditing(_ textField: UITextField) -> Int{ let row = cellTextField.tag return row }。但我无法使用在视图控制器获取行索引路径的操作方法中。请你帮我解决这个@vadian
-
如何创建 Tableviewcell1 的实例以在函数中传递。@aiwiguna
标签: ios swift uitableview nsindexpath