这里我试图通过使用协议将值从一个类LanguageSelectionTVC
传递到另一个RegistrationVC
。委托函数未被调用iOS Swift
当我尝试并调用该方法self.delegate?.setSelectedLangauges(self.languagesSpokenArray)
内LanguageSelectionTVC
它不会调用该方法setSelectedLangauges
类Registration VC
里面可能有人请建议我要去的地方错了吗?
protocol LanguageSelectionTVCProtocol {
func setSelectedLangauges(_ valueSent: [String])
}
class LanguageSelectionTVC: UITableViewController {
var delegate : LanguageSelectionTVCProtocol? = nil
func saveAndClose() {
self.delegate?.setSelectedLangauges(self.languagesSpokenArray)
dismiss()
}
}
class RegistrationVC: UIViewController,
UITableViewDelegate,
UITableViewDataSource,
LanguageSelectionTVCProtocol{
func setSelectedLangauges(_ valueSent: [String]){
self.showLanguagesSpoken(valueSent)
}
}
从RegistrationVC
移至LanguageSelectionTVC
。下面tableView
方法是我RegistrationVC
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let row = indexPath.row
let section = indexPath.section
let currentCell = tableView.cellForRow(at: indexPath) as! UITableViewCell
if section == 4 && row == 0 {
// The user has clicked on languages spoken cell
self.performSegue(withIdentifier: "LanguageSelectionTVC", sender: self)
}
}
接收数据如果要设置委托展示如何从'RegistrationVC' –
移动到'LanguageSelectionTVC'你有** **设置委托地方。 – vadian
@NiravD更新了我的问题,以显示我如何从'RegistrationVC'移动到'LanguageSelectionTVC' – user44776