如何在一个类中使用不同的委托和数据源方法实现两个Tableview?

时间:2018-03-04 16:32:52

标签: ios objective-c menu delegates tableview

我想在一个类中实现两个Tableview。 我Khow objective-C不支持方法重载,并且如何使用相同的方法使用两个TableView但是如果有不同的参数类型会怎么样?

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

[tableView dismisWithIndexPath:indexPath];
}

- (void)tableView:(YALContextMenuTableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

}

2 个答案:

答案 0 :(得分:2)

您不能在同一个视图控制器中为两个表视图使用两个单独的委托方法。而不是使用两个不同的表视图委托方法,您可以更好地为表视图设置标记和名称。

第一个表视图名称

 if([tableView isEqual:YourFirstTableViewName]) {
    ......//Your coding part
 }
 else if([tableView isEqual:YourSecondTableViewName]) {
    ......//Your coding part
 }
 else {
    ......//Your coding part
 }

其次使用表格视图的标签

if(tableView.tag == 0)  //Set tag whatever you want for first table view
{
     ......//Your coding part
}
else if(tableView.tag == 1)  //Set tag whatever you want for second table view
{
     ......//Your coding part
}

答案 1 :(得分:0)

在委托方法中,测试表视图类的类型,以确定哪个表视图称为方法,

{{1}}