OK、iPhone、Objective C、Cocoa Touchのプログラミングは初めてですが、これを理解できません。デリゲートがセルフだと情報が多いのですが、別のファイルに送ろうとしています。
ここにいくつかのコードがあります...私は次のメソッドを持っています(通常は関数と呼びますが、メソッドは正しい用語だと思います)appDelegate.m
[GameUtil showAlertViewWithTag:1 delegate:self withTitle:@"" message:msg cancelButtonTitle:@"New game" otherButtonTitles:@"Main Menu", nil];
GameUtil.h
で、showAlertViewWithTag.m
を適切に設定しましたが、正常に動作しています。
私が抱えている問題は、そのdelegate:self
部分にあります...現状では、alertviewのボタンをクリック-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
すると、私の中にあるものに移動しますappDelegate.m
(もちろん、自分自身をデリゲートとして使用する場合に予想されます)。
しかし、ボタンがクリックされたときにやりたいことは、それを-(void)alertView:..
という別のファイルに送信することですplayField.m
。
alertview を正しくセットアップしましたplayField.m
(playField.m 内から delegate:self で alertview を呼び出してテストしました)。
基本的に、appDelegate.m の alertview に、delegate:self の代わりに playField.m にあるデリゲートを使用するように指示する方法に困惑しています。
playField.m または .h を appDelegate.m に #import する必要があると思いますが、それ以上は @protocol @interface のすべてで失われます。
「playField.h の先頭に XYZ を配置し、playField.m の先頭に ABC を配置する必要があります」のように、ベイビー ステップは非常に役立ちます。
これがかなり簡単に実装できることを願っています。いくつかの簡単なことが欠けているだけです。
前もって感謝します :)