好吧,我会试着尽可能简单地打破这一点。我在ViewController中有一个tableView。我有两个桌子原型单元。我正在重复使用这些单元格来填充表格。如果知道该行,是否可以派生indexPath?
在其中一个单元格中,我添加了手势识别器到label
,通过该手势,我正在使textField
显示在标签的位置并隐藏了label
。现在我希望标签文字改为我在textField
中输入的内容,当我使用textField
并按回车键时。所以我在viewController
中实现了UITextFieldDelegate
协议。我还为单元格中的每个textField添加了标签,以便我知道textField
正在返回以及textField在哪一行。
基本上,我想知道的是如果有任何方法可以获取indexPath如果我已经知道indexPath.row?
对于手势识别,我能够从抽头位置获得indexPath来解决此问题:
func genderTapped(sender: UITapGestureRecognizer) {
let tapLocation = sender.locationInView(self.profileInfoTable)
let indexPath = self.profileInfoTable.indexPathForRowAtPoint(tapLocation)
let cell = self.profileInfoTable.cellForRowAtIndexPath(indexPath!) as! editUserDataCell
cell.savedUserInput.hidden = true
cell.userDetailTextfield.becomeFirstResponder()
cell.userDetailTextfield.hidden = false
cell.userDetailTextfield.text = cell.savedUserInput.text!
}
我需要indexPath
,这样我可以指包含在细胞内的元素。谁能提供任何见解?有没有人试过类似的方法?有什么方法可以通过使用该行来访问单元格?
如何设置'tag到每个textFields'? – pkc456
对于访问UITableView行,您始终需要该节中的某一节的索引和该行的索引。所以如果你也知道你需要访问的部分,它可以有一个简单的答案。如果你只有一个部分它的tableView,它的索引当然是0. – pedrouan
@ pkc456我在cellForRowAtIndexPath函数中设置标签 – Jobs