2009-05-08 10 views
0

私はボタンクラスを持っています - ボタンをクリックすると、MyAudioクラスのplayFileメソッドが呼び出されます。だから私の質問は、そのボタンクラスからのplayFileメソッドを呼び出すのは簡単ですが、どのようにメソッドのdisplayStopButtonをイニシエータクラスから呼び出すのですか?あなたがコントローラで有効および無効にしたいあなたのすべてのコントロールのポインタを維持する必要がありインスタンス化されたクラスobj-cからイニシエータクラス内のメソッドを呼び出します

ボタンクラス

- (void)myButtonClicked: (id)sender 
{ 
    [MyAudio playFile]; 

} 

-(void)enablePlayButton 
{ 
    // test 
} 

MyAudioクラス

-(BOOL)playFile{ 

    // Init AVAudioPlayer 
} 

- (void)audioPlayerDidFinishPlaying: (AVAudioPlayer*)player successfully: (BOOL)flag 
{ 

    // make a call back to calling class???? 

} 

答えて

0

。これらのハンドルを使用すると、オーディオサブシステムの通知を受けるとオン/オフを切り替えることができます。

1

Buttonクラスは、コントローラクラスのように見えます。 audioPlayerDidFinishPlayingは、コントローラクラスに実装する必要があるメソッドのように聞こえます。こうすることで、コントローラクラスをオーディオプレーヤークラスのデリゲートに設定でき、audioPlayerDidFinishPlayingメソッドの実装で[self displayStopButton]を呼び出すことができます。

関連する問題