0

我有一个包含 3 个表的视图

1-第一

2 秒

三分之三

我已经尝试过UISplitView视图,但正如许多帖子所说,它只支持 2 个视图,所以我决定移到 3 个表选择

我想根据用户点击第一个表来更改第二个表的数据源

这是我的代码:首先

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


    [tableView deselectRowAtIndexPath:indexPath animated:YES];
    items = [NSMutableArray arrayWithObjects:@"test",@"20",@"30",@"40",@"5",@"6",@"6",@"8",@"9",@"10",@"11",@"12",nil];
    SecondViewController *s=[[SecondViewController alloc]init];
    [s setitems:items];

}

在第二

-(void) setitems :(NSMutableArray *)datasource
{
    items=datasource;
    [self.tableView reloadData];
}

问题是numberOfRowsInSection第二张桌子没有被解雇?我想知道动态更改表数据源的最佳方法?

4

2 回答 2

0

您是否将第二个 tableview 的委托设置为 self?否则不会调用 tableview 的委托方法。

于 2012-12-04T10:19:54.823 回答
0

UITableView 委托只有在加载了 tableView 时才会被触发(在视图上可见)。您正在初始化 SecondViewController 但表将被加载。它会在您访问(或显示)SecondViewController 的视图时加载。所以尝试调用 [s setitems:items]; 添加 SecondViewController 的视图后。

于 2012-12-04T10:22:15.050 回答