0

在 Xcode 的界面构建器中添加 UIViews 时,您可以使用 Ctrl+拖动来为包含该视图的 UIViewController 创建一个目标操作。您也可以对使用 IB 添加的任何子视图执行此操作。

如果在 awakeFromNib 中以编程方式创建和添加子视图,有没有办法将目标操作从它添加到视图控制器,或者您必须先在 awakeFromNib 中创建子视图,然后使用视图控制器创建目标操作作为代表?

4

1 回答 1

0

如果它是从头开始创建的,则必须手动绑定事件。

但是,如果它是从另一个 NIB 加载的,则至少有 2 个选项:

  1. 您可以从视图中获取 uiviewcontroller,请参阅此答案:https ://stackoverflow.com/a/3732812/126995然后您可以将 VC 传递给loadNibNamed:owner:options:方法。

  2. 在 IB 中,您可以将根视图的类型从UIView自定义 UIView 派生类更改,并将子视图中的操作和出口绑定到 NIB 的根视图。

于 2013-02-16T20:57:13.773 回答