我有一个tableview
.In 的每个单元格tableview
,都有一个上传按钮。单击该按钮时,我使用协议委托机制告诉 TableViewVC 我需要显示文件选择器选项。我不明白的是,当为特定单元格选择特定文件时,如何将回调从 TableView 传递到 TableView Cell,以便我可以更改该单元格中标签的可见性。
这是单击单元格中的按钮时我的代码
protocol FileUploadDelegate {
func uploadFile(documentId: Int,position: Int)
}
@IBAction func uploadDocumentClicked(_ sender: Any) {
delegate?.uploadFile(documentId: documentId,position: position)
}
在我的TableViewVC
我已经实现了协议并为文件选择器编写了所有代码
现在用下面的方法
func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
}
我需要将回调从 tableView 传递到触发操作的确切 tableCell,以便我可以更改该单元格中标签的可见性。我怎样才能做到这一点?
您可以像这样修改此方法:
protocol FileUploadDelegate {
func uploadFile(documentId: Int,position: Int, cellIndexPath: IndexPath)
}
您将获得稍后需要更新的单元格。您可以在此之后保存为属性(例如),您可以在方法中更新:
func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
}
通过 tableView.reloadData()
在里面cellForRowAtIndexPath
你可以用你保存的索引路径更新特殊单元格
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句