1

プロジェクトに30以上のビューコントローラがあり、そのうち28に追加される動作があります。

そのビューコントローラで10秒が経過していない場合にボタンがクリックされると、上からスライドするアラートビューを表示する必要があります。(私はすでにそれらの1つにこの動作を実装しています)

しかし、私の質問は、これらすべてのビューコントローラーに対して適切な方法でこの動作を継承するにはどうすればよいかということです。

これをグーグルで検索しますが、関連する解決策を見つけることができません。

4

2 に答える 2

3

この機能を必要とするすべてのビューコントローラがのサブクラスであるUIViewController場合、つまり、のサブクラスではないUITableViewController場合、またはのサブクラスである場合は、複製する必要のある機能を実装する、たとえば(または意味のあるもの)UIViewControllerのサブクラスを作成できます。次に、この機能を必要とするすべてのクラス に、の代わりにクラスをサブクラス化します。UIViewControllerButtonClickAlertViewControllerButtonClickAlertViewControllerUIViewController

この特定の機能が個々のViewControllerクラスのそれぞれにどのように統合されるかを考慮する必要がある場合があります。たとえば、ButtonClickAlertViewControllerタイマーをチェックしてアラートを表示するために、ボタンがクリックされたことを通知するメソッドがクラスに必要な場合があります。サブクラスの各クラスでは、ボタンクリックアクションが呼び出すButtonClickAlertViewController各メソッドでこのメソッドを呼び出す必要がある場合があります。IBAction

于 2013-03-10T10:12:58.790 に答える
0

すべてのViewControllerに対して目的の動作をサブクラスUIViewController化して追加してから、既存のViewControllerをviewControllerから目的の動作でサブクラス化します。

継承チェーン:

UIViewController-> ViewControllerWithBehaviorForAll-> YouExistingViewlContollersWhichNeedTheBehavior

于 2013-03-10T10:11:30.717 に答える