【发布时间】:2012-05-06 05:35:55
【问题描述】:
好的,所以我对 iPhone、Objective C 和 Cocoa Touch 的编程有点陌生,但无法弄清楚这一点。委托人为自己时有很多信息,但我正在尝试将其发送到另一个文件。
这里有一些代码...
我在appDelegate.m中有以下方法(我通常称它为函数,但我认为方法是正确的术语)
[GameUtil showAlertViewWithTag:1 delegate:self withTitle:@"" message:msg cancelButtonTitle:@"New game" otherButtonTitles:@"Main Menu", nil];
在GameUtil.h 和.m 中,我已经正确设置了showAlertViewWithTag,它工作正常。
我遇到的问题是delegate:self 部分...就目前而言,当单击警报视图上的按钮时,它将转到位于我的appDelegate.m 中的-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex(当然是使用 self 作为委托时需要)。
但是当单击按钮时,我希望它在另一个名为 playField.m 的文件中将其发送到 -(void)alertView:..。
我在playField.m 中正确设置了alertview(已通过在playField.m 中使用delegate:self 调用alertview 进行了测试)。
基本上,我对如何告诉 appDelegate.m 中的警报视图使用 playField.m 中的委托而不是委托:self 感到困惑。
我认为我需要将 #import playField.m 或 .h at 导入 appDelegate.m,但除此之外,我对所有 @protocol @interface 的东西感到迷茫。
小步骤会很有帮助,例如“您需要将 XYZ 放在 playField.h 的顶部,将 ABC 放在 playField.m 的顶部”。
我希望这实现起来相当简单,我只是缺少一些简单的东西。
提前致谢:)
【问题讨论】:
标签: iphone objective-c ios cocoa-touch ipad