gpt4 book ai didi

iphone - 如何在ARC环境中将Parser Delegate设置为Self?

转载 作者:行者123 更新时间:2023-12-03 20:25:20 25 4
gpt4 key购买 nike

嘿,我过去使用过解析器,但从未在 ARC 环境中使用过。现在,当我尝试将解析器设置为 self 时,它会给出一条错误消息,然后不会解析我的数据。有人知道问题是什么以及如何解决吗?

这是当我尝试将解析器委托(delegate)设置为 self 时收到的警告:

Semantic Issue: Sending 'CharityController *const __strong' to parameter of incompatible    type 'id<NSXMLParserDelegate>'

这是我的代码:

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
if (connection == theConnection)
{
// do something with the data object.
//NSLog(@"Data from server is: %@",data);
NSString *test = [[NSString alloc]initWithData:data encoding:NSStringEncodingConversionAllowLossy];
NSLog(@"Data from server is: %@",test);
parser = [[NSXMLParser alloc] initWithData: data];
[parser setDelegate:self];
[parser parse];
}
}

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {
if ([elementName isEqualToString:@"root"]) {
currentStringValue = nil;
NSLog(@"I am inside the Parser at root!.");

return;
}

最佳答案

您是否在接口(interface)定义中使用了协议(protocol)名称来让编译器知道您符合该特定协议(protocol)?如:

@interface CharityClass : NSObject <NSXMLParserDelegate>

关于iphone - 如何在ARC环境中将Parser Delegate设置为Self?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9628916/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com