viewcontroller继承

时间:2013-03-10 10:06:05

标签: ios uiviewcontroller storyboard

我的项目中有30多个viewcontroller,并且有28个行为被添加。

如果单击一个按钮,如果在该视图控制器中没有传递10秒,我需要显示从顶部滑动的警报视图。 (我已经为其中一个实现了这种行为)

但我的问题是,如何以适当的方式为所有这些viewcontrollers继承此行为?

谷歌搜索,但无法找到相关解决方案。

2 个答案:

答案 0 :(得分:3)

如果需要此功能的所有视图控制器都是UIViewController的子类,即不是UITableViewControllerUIViewController的另一个子类,则可以创建UIViewController的子类,说ButtonClickAlertViewController(或任何有意义的)实现您需要复制的功能。然后让所有需要此功能的类继承ButtonClickAlertViewController类而不是UIViewController

您可能需要考虑此特定功能如何集成到每个视图控制器类中。例如,您可能需要ButtonClickAlertViewController类中的一个方法,该方法表示已单击按钮以检查计时器并可能显示警报。在每个子类ButtonClickAlertViewController的类中,您可能需要在按钮单击操作调用的每个IBAction方法中调用此方法。

答案 1 :(得分:0)

子类UIViewController并为所有视图控制器添加所需的行为,然后从viewController子类化现有的视图控制器,并具有所需的行为。

继承链:

  

UIViewController - > ViewControllerWithBehaviorForAll - >   YouExistingViewlContollersWhichNeedTheBehavior