委托方法或全局声明来为 UIButton 添加操作?

Delegate method or Global declaration to add action for UIButton?

在我的自定义视图中,我创建了一个按钮。为该按钮添加操作是可行的解决方案创建委托方法或将 UIButton 声明为全局变量和 addTaget。请推荐我。

我强烈建议尽可能不要使用全局变量。全局数据(常量)很好,但是全局变量维护成本高,因为任何人都可以修改它。

在两种情况下您可能需要全局变量:

  1. 它必须在多个不相关的子模块中触发不同的动作。我在这里推荐的是在 class/function 中创建按钮和目标,并在目标中发送通知。让不同的子系统注册到通知并采取适当的行动
  2. 您只有一个 class 来执行一项操作,但没有委托并使用全局变量很方便。我请求你更喜欢设计而不是方便。

请不要使用全局变量。 您有两个相同的选项:

  1. 如果您使用的是自定义 class,那么您必须使用委托方法
  2. 另一种选择是:您可以使用 UIButton 创建方法 return 键入并使用此方法在任何 class.
  3. 中的按钮上创建操作方法

注意:我强烈建议您必须使用委托方法。