滚动视图中有 table 个视图的两个视图控制器

Two view controllers with table views inside scroll view

我应该如何为我的以下场景实施 table 视图数据源架构:

我的问题是我不知道什么是表示 table 视图的最佳方式。

谁能给我一个好的解决方案?
我尝试了很多解决方案,但我的问题始终是我无法将数据从一个传输到另一个,因为我无法访问数据源,或者在使用协议时委托为 nil。

你绝对应该只有一个 Tableview 和一个视图控制器(如果可能的话)和 2 个不同的数据源。编程的基本规则之一是永远不要重复自己。

假设你有 2 个视图控制器 A 和 B。 A 和 B 都是相同 ViewController Class 的实例,例如A = SomeViewController() 和 B = SomeViewController()。在viewDidLoad中,您可以指定使用哪个数据源。

如果您在将数据从 Viewcontroller A 传输到 Viewcontroller B 时遇到问题,您可以在 SomeViewController class 上创建一个 public 方法这会将对象添加到数据源(例如 addCityToDatasource:)

然后例如,如果你想要一个从 B 到 A 的城市,在 viewController B 你调用 A.addCityToDataSource("Tokyo") 哪个将城市添加到 A 的数据源