Ios 当ViewController已经有委托时,如何设置委托?

Ios 当ViewController已经有委托时,如何设置委托?,ios,uiviewcontroller,uialertview,Ios,Uiviewcontroller,Uialertview,我有一个发送电子邮件的iPhone应用程序。如果未设置“收件人:”地址,我将显示警报(UIAlertView)。目前,我没有检查用户点击OK,我只是继续我的快乐之路!:D 单击警报上的“确定”时,我遇到以下错误: wait_fences:未能接收回复:10004003 我相信这是因为我没有处理OK的点击,当应用程序正在做其他事情时,它仍然显示出来。因此,在对So和Google进行了一些研究之后,我似乎必须有以下几点: - (void) Alert: (NSString *) title andD

我有一个发送电子邮件的iPhone应用程序。如果未设置“收件人:”地址,我将显示警报(UIAlertView)。目前,我没有检查用户点击OK,我只是继续我的快乐之路!:D

单击警报上的“确定”时,我遇到以下错误:

wait_fences:未能接收回复:10004003

我相信这是因为我没有处理OK的点击,当应用程序正在做其他事情时,它仍然显示出来。因此,在对So和Google进行了一些研究之后,我似乎必须有以下几点:

- (void) Alert: (NSString *) title andData: (NSString *) errorMsg  {

    UIAlertView *alert = [[UIAlertView alloc]
                          initWithTitle: title
                          message: errorMsg 
                          delegate:nil
                          cancelButtonTitle: @"OK"
                          otherButtonTitles: nil];
    [alert show];


    return;

}

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex
{
    NSLog(@"button was pressed");
}
我的问题是,我不知道如何为此设置代理。我已经有一位代表:

@interface ReportViewController : UIViewController <UIWebViewDelegate>  {
@接口报告ViewController:UIViewController{

如何设置代理以处理点击“确定”按钮,从而消除错误?

在尖括号内,您可以提供逗号分隔的协议列表

@interface ReportViewController : UIViewController <UIWebViewDelegate, UIAlertViewDelegate>  {
@接口报告ViewController:UIViewController{

现在您可以实现这两组方法。不要忘记将警报视图的委托设置为
self

根据问题中的代码
'delegate:nil'
,您的委托看起来像是nil。您需要将其更改为
'delegate:self'

我已编辑了我的问题以显示相关代码。委托是其中之一我最薄弱的专业领域;因此,我不确定您指的是什么。您能详细说明一下吗?我给了您@interface行的更改。当您创建警报视图时,请将
self
参数传递到
delegate:
而不是
nil
。我建议您真正理解委托设计n模式,而不仅仅是解决这个问题。这是你了解的最有用的事情之一。