2013-03-10 232 views
1

我有30+ viewcontroller在我的項目中,並有一個行爲被添加到其中28。視圖控制器繼承

當一個按鈕被點擊時,如果10秒沒有通過該視圖控制器,我需要呈現一個alertview從頂部滑動。 (我已經爲其中之一實現了這種行爲)

但我的問題是,我如何才能以適當的方式繼承這些視圖控制器的這種行爲?

使用谷歌搜索這個,但找不到相關解決方案。

回答

3

如果所有需要此功能是UIViewController子視圖控制器,即不UITableViewControllerUIViewController另一個子集中的,你可以創建一個UIViewController的子類,比如說ButtonClickAlertViewController(或者任何有意義的),它實現了你需要的功能複製。然後讓所有需要這個功能的類繼承你的ButtonClickAlertViewController類而不是UIViewController

您可能需要考慮如何將此特定功能集成到您的每個視圖控制器類中。例如,您可能需要在您的ButtonClickAlertViewController類中使用一種方法來指示按鈕已被點擊以檢查您的計時器並可能顯示警報。在每個ButtonClickAlertViewController的子類中,您可能需要在按鈕單擊操作調用的每個IBAction方法中調用此方法。

0

子類UIViewController併爲所有視圖控制器添加所需的行爲,然後從viewController中爲您的現有視圖控制器子類化所需的行爲。

繼承鏈:

的UIViewController - > ViewControllerWithBehaviorForAll - > YouExistingViewlContollersWhichNeedTheBehavior