2010-06-25 59 views
0

有兩種類A和B:理解協議實現與例如UIAlertViewDelegate

@interface答:NSObject的< UIAlertViewDelegate> {...} @end

@interface B {...}

A將通過創建B來使用B並使用它。

在B中,有機會創建UIAlertViewDialog,並進行一些用戶交互。

我認爲在類A中實現clickedButtonAtIndex是合理的,因爲A被聲明爲確認UIAlertViewDelegate。但是,真正的是,我們應該在B.實現

  • (無效)alertView:(UIAlertView中*)警報clickedButtonAtIndex:(NSInteger的)buttonIndex {//喇嘛喇嘛}

我真的不明白什麼是真正的原因來確認這種情況下的協議。

在此先感謝。

回答

1

在創建UIAlertView中定義會是怎樣的委託類:

UIAlertView *alert = [[UIAlertView alloc] 
      initWithTitle: title 
      message: message 
      delegate: delegate 
      cancelButtonTitle: firstButtonName 
      otherButtonTitles: nil]; 

所以,如果你在B類創建的UIAlertView中,但你要在A類,你需要設置按鈕自來水發生反應在代碼上面的代碼A級。

+0

感謝您的回答,這清除了我的困惑。 – Forrest 2010-06-29 05:51:50

+0

如果您可以接受答案(通過點擊勾號),如果這是您正在查找的信息,那將會很棒;) – Shingoo 2010-06-29 15:48:46