我正在考虑向现有的UI视图控制器添加大量的TableView。
然而,我的问题是我可以将多个TableView嵌入到单个ContainerView中吗?
我的应用程序会进行各种测试,并且会有结果。每次测试完成后,我想添加一个TableView,使它们整齐地出现在彼此之下。
这可能吗?
答案 0 :(得分:1)
是的,你可以。你可以做两件事:
ONE View Controller - 多个表视图(作为根视图的子视图)
或
一个容器控制器 - 许多使用VC包含的ChildViewControllers(并且每个都有一个表视图)
答案 1 :(得分:0)
这是你可以在ViewDidLoad中为UIViewController子类做的。
// Do any additional setup after loading the view, typically from a nib.
CGRect frame = self.view.frame;
// this container shall hold the two tables that I am going to add later
// container shall share the same size as view controller's "view"
UIView *container = [[UIView alloc] initWithFrame:frame];
frame.size.height = frame.size.height / 2; // I want to fit two table view vertically to cover the container view
UITableView *tableView1 = [[UITableView alloc] initWithFrame:frame];
tableView1.backgroundColor = [UIColor redColor];
// ...
// ...
// Assign more table view properties here
// ...
// ...
[container addSubview:tableView1];
frame.origin.y = frame.size.height; // update coordinates for the second table view
UITableView *tableView2 = [[UITableView alloc] initWithFrame:frame];
tableView2.backgroundColor = [UIColor greenColor];
// ...
// ...
// Assign more table view properties here
// ...
// ...
[container addSubview:tableView2];
[self.view addSubview:container];
您必须为所有tableviews设置Delegates才能使它们正常工作,但这应该会让您有所收获。 (我添加了一些不同的背景颜色来区分两种表格视图)