Swift - 插座无法连接到重复内容

Swift - Outlets cannot be connected to repeating content

完整的错误是:从 TableViewController 到 AVPlayerView 的 playerView outlet 无效。插座无法连接到重复内容。

类似 this one 的答案没有奏效(假设我尝试正确,我是 iOS 的新手)。

我只想要一个 TableViewCell 中的视图。

我试过将 Storyboard 中的一个视图拖到我的 TableViewCell 的 contentView(和单元格),为它分配一个 class of AVPlayerView: UIView(和一个 subclass of tableViewCell: AVPlayerView : UITableViewCell),然后 ctrl+从情节提要中的那个视图拖动到我的 TableViewController 中。然后它不编译。真的很困惑,感谢您的帮助。

您的 table 视图可以包含静态内容或动态内容。

如果您希望 table 视图始终具有相同的内容,请将其设置为静态(在界面生成器中),然后您可以 link 那样的出口,在 UIViewController.

如果您希望 table 视图单元格动态变化,则不能那样做。因为您可以重复单元格并且出口会模棱两可。您需要为您的单元格创建一个 UITableViewCell 子类,并在那里创建插座。

澄清一下:在动态 table 模式下,您需要按住 ctrl+将插座拖动到 UITableViewCell 子类中,而不是视图控制器中。

非常简单的解决方案是:

只需在 table 视图单元的子类中获取视图或 NSLayoutConstraint 引用插座而不是 table 视图控制器,并在 cellForRowAtIndexPath 方法或任何方法中使用 table 视图单元的对象进行访问其他方法。