我有tablewcontroller。在tableview单元格中,我在tableviewcontroller中添加了带委托和数据源的其他表。我可以为每个表设置不同的数据源,但我不能在添加的表中处理单元格didSelect事件。这是我的代码:
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
if tableView==self.category1Table{
return category1Data.count
}else if tableView==self.category2Table{
return category2Data.count
}else if tableView==self.category3Table{
return category3Data.count
}
return 1
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if tableView==self.category1Table{
let cell=tableView.dequeueReusableCell(withIdentifier: "category1Cell", for: indexPath)
cell.textLabel?.text=category1Data[indexPath.row]
cell.textLabel?.textColor=UIColor.white
cell.textLabel?.font=UIFont(name: "HelveticaNeue-Bold", size: 15)
return cell
}else if tableView==self.category2Table{
let cell=tableView.dequeueReusableCell(withIdentifier: "category2Cell", for: indexPath)
cell.textLabel?.text=category2Data[indexPath.row]
cell.textLabel?.textColor=UIColor.white
cell.textLabel?.font=UIFont(name: "HelveticaNeue-Bold", size: 15)
return cell
}else if tableView==self.category3Table{
let cell=tableView.dequeueReusableCell(withIdentifier: "category3Cell", for: indexPath)
cell.textLabel?.text=category3Data[indexPath.row]
cell.textLabel?.textColor=UIColor.white
cell.textLabel?.font=UIFont(name: "HelveticaNeue-Bold", size: 15)
return cell
}
return mainInformationCell
}
override func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
if tableView==self.category1Table{
cell.backgroundColor=UIColor.clear
}else if tableView==self.category2Table{
cell.backgroundColor=UIColor.clear
}else if tableView==self.category3Table{
cell.backgroundColor=UIColor.clear
}else{
cell.backgroundColor=UIColor.clear
}
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print(indexPath.row)
if tableView==self.category1Table{
category1Btn.setTitle(category1Data[indexPath.row], for: .normal)
category1Btn.sendActions(for: .touchUpInside)
}else if tableView==self.category2Table{
category2Btn.setTitle(category2Data[indexPath.row], for: .normal)
category2Btn.sendActions(for: .touchUpInside)
}else if tableView==self.category3Table{
category3Btn.setTitle(category3Data[indexPath.row], for: .normal)
category3Btn.sendActions(for: .touchUpInside)
}
}
我怎么能这样做?