如果可以在一个ViewController中使用多个uiTableView,我就会徘徊。
例如:
一个视图控制器中的tableView1和tableView2。
视图控制器的初始启动,应该禁用tableView2并且不可见。
tableView1应该显示与之关联的数据。
当用户从tableView1中选择一行时,它应该显示与tableView2中所选行对应的数据。
仍应启用tableView1,如果用户选择另一行,则tableView2的内容也应分别更改。
感谢您提供的任何帮助或指导。 :)
答案 0 :(得分:5)
当然你可以这样做。这是故事板中的5分钟。
您应该选择UIViewController
(不是UITableViewController
!)
并创建这样的东西:
然后你应该用ctrl
键创建对象引用。
您必须记住,您必须将两个tableView中的delegate和dataSource设置为ViewController:
在第二个表视图中,将initialView设置为隐藏。
然后在方法- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
的代码中,您应该在第一行调用:
[self.mySecondTableView setHidden:NO]
以后做你所有的事情。就是这样。
修改强> 现在我意识到你已经将主题设置为“多个”tableViews。对于两个TableView,这个解决方案非常混乱。我建议你使用容器,然后所有tableView都有自己的ViewController。
答案 1 :(得分:0)
您可以为这两个TableView设置不同的标签和插座。
然后在
-(void)ViewDidLoad
self.yourSecondTableView.hidden = YES;
隐藏第二个tableView
以及何时调用委托方法
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
或
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
你可以要求提供像
这样的标签if (tableView.tag == yourSecondTableViewTag)
return something