一起使用笔尖和情节提要:将笔尖的按钮目标/动作连接到情节提要中的控制器

Posted

技术标签:

【中文标题】一起使用笔尖和情节提要:将笔尖的按钮目标/动作连接到情节提要中的控制器【英文标题】:use nib and storyboard together: connect the nib's button target/action to a controller from the storyboard 【发布时间】:2014-02-21 13:28:04 【问题描述】:

我正在制作一个聊天应用程序。我有一个单独的 nib 视图 (ActionButtonsView) 用于滚动视图的内容,因为它很难在情节提要中进行编辑,并且我可能对同一滚动视图的内容使用不同的 nib(例如 ActionButtonsView、Emoji 视图等)

nib 视图的文件所有者是 ActionButtonsView 类,但是,我需要将按钮连接到 ChatViewController(而不是 ActionButtonsView)来触发一些操作。 ChatViewController 在故事板中,而不是笔尖。

我该怎么做?

【问题讨论】:

【参考方案1】:

无论是否可能,我都不会那样创建视图与其视图控制器之间的依赖关系。 我使用的是委托:创建一个委托来处理您的按钮事件,在视图控制器中实现它,将其作为委托传递给视图,并从视图相应地调用您的按钮事件处理程序中的委托方法。

另一种选择是使用NSNotificationCenter - 但它更多是广播事件的工具,而在您的情况下,它将是点对点通知。

【讨论】:

我有很多按钮(想象一下 EmojiView),我认为拥有多个按钮操作不是一个好主意。是否可以从上到下和从左到右标记所有按钮? 这很乏味,但它确实有效。 (我在 ActionButtonsView 类的每个动作中手动分配标签,这样在视图控制器中我只需要使用一个

以上是关于一起使用笔尖和情节提要:将笔尖的按钮目标/动作连接到情节提要中的控制器的主要内容,如果未能解决你的问题,请参考以下文章

Xcode,从情节提要中提取视图到笔尖,最好的方法?

从情节提要(或必要时使用笔尖)在视图顶部加载控制器

iOS:从笔尖重写到情节提要

在笔尖而不是情节提要中制作原型单元

如何从情节提要中获取 UIViewControl 对象的笔尖名称

加载笔尖但未设置视图出口,找不到视图出口。