我的项目中有 30 多个视图控制器,其中 28 个要添加一个行为。
如果在该视图控制器中未通过 10 秒,则单击按钮时,我需要显示从顶部滑动的警报视图。(我已经为其中一个实现了这种行为)
但我的问题是,我怎样才能以适当的方式为所有这些视图控制器继承这种行为?
谷歌搜索,但找不到相关的解决方案。
我的项目中有 30 多个视图控制器,其中 28 个要添加一个行为。
如果在该视图控制器中未通过 10 秒,则单击按钮时,我需要显示从顶部滑动的警报视图。(我已经为其中一个实现了这种行为)
但我的问题是,我怎样才能以适当的方式为所有这些视图控制器继承这种行为?
谷歌搜索,但找不到相关的解决方案。
如果您所有需要此功能的视图控制器都是 的子类UIViewController
,即不是UITableViewController
或另一个子类UIViewController
,您可以创建一个子类UIViewController
,比如说ButtonClickAlertViewController
(或任何有意义的)实现您需要复制的功能。然后让所有需要此功能的类子类化您的 ButtonClickAlertViewController
类而不是UIViewController
.
您可能需要考虑此特定功能如何集成到每个单独的视图控制器类中。例如,您可能需要在您的ButtonClickAlertViewController
类中使用一个方法来指示按钮已被单击,以检查您的计时器并可能显示警报。在您的每个子类中ButtonClickAlertViewController
,您可能需要在IBAction
按钮单击操作调用的每个方法中调用此方法。
子类UIViewController
化并为所有视图控制器添加您想要的行为,然后从 viewController 子类化您现有的视图控制器并使用所需的行为。
继承链:
UIViewController -> ViewControllerWithBehaviorForAll -> YouExistingViewlContollersWhichNeedTheBehavior