Предупреждение NSXMLParserDelegate

После добавления @interface MedicalRecordViewController : UIViewController<UITextFieldDelegate,NSXMLParserDelegate,UITextViewDelegate> мое приложение по-прежнему показывает предупреждение в

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:webData];
XmlParser *parser = [[XmlParser alloc] initXMLParser];
if (serviceRequest==1) {
    [parser setPageRequest:2];
}else if (serviceRequest==2) {
    [parser setPageRequest:5];
}else if (serviceRequest==3) {
    [parser setPageRequest:4];
}else if (serviceRequest==4) {
    [parser setPageRequest:4];
}
[xmlParser setDelegate:parser]; // warning here
BOOL success = [xmlParser parse];

предупреждающее сообщение

Sending 'XmlParser *' to parameter of incompatible type 'id<NSXMLParserDelegate>'

Что не так в моем коде? Должен ли я добавить что-то еще?


person fazil    schedule 28.03.2013    source источник
comment
я думаю, что предупреждение должно быть в этой строке: [xmlParser setDelegate:parser];   -  person Suny    schedule 28.03.2013
comment
Да, извините, сейчас обновлю квест.   -  person fazil    schedule 28.03.2013
comment
@ H2CO3 уже отредактировал ваш вопрос, и да, класс XmlParser не реализует протокол NSXMLParserDelegate, как он упомянул.   -  person Suny    schedule 28.03.2013
comment
@Сани Да. Есть ли альтернативы для исправления предупреждения   -  person fazil    schedule 28.03.2013
comment
если у вас есть разрешение (исходный код), вы можете отредактировать его, чтобы реализовать NSXMLParserDelegate.   -  person Suny    schedule 28.03.2013


Ответы (1)


Класс XmlParser не реализует протокол NSXMLParserDelegate.

person Community    schedule 28.03.2013
comment
Тогда как удалить это предупреждение - person fazil; 28.03.2013
comment
@fazil Не уверен, что вы на самом деле пытаетесь сделать, но вы должны сделать делегата объектом, класс которого соответствует этому протоколу. - person ; 28.03.2013