Как разобрать второй дочерний узел со страницы XML в iphone - PullRequest
0 голосов
/ 08 февраля 2010

Я новичок в разработке для iphone. Я хочу проанализировать XML-страницу you-tube, получить ее содержимое и отобразить в ленте RSS.

моя страница XML

<entry>
<id>xxxxx</id>
<title>xxx xxxx xxxx</title>
<content>xxxxxxxxxxx</content>
<media:group>
 <media:thumbnail url="http://tiger.jpg"/>
</media:group>
</entry>

Для извлечения контента я использую xml-разбор.

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{            

currentElement = [elementName copy];
if ([elementName isEqualToString:@"entry"]) {

    entry = [[NSMutableDictionary alloc] init];
    currentTitle = [[NSMutableString alloc] init];
    currentcontent = [[NSMutableString alloc] init];
    }

}


- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{     
if ([elementName isEqualToString:@"entry"]) {
    [entry setObject:currentTitle forKey:@"title"];
    [entry setObject:currentDate forKey:@"content"];
    [stories addObject:[entry copy]];
    }}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{

if ([currentElement isEqualToString:@"title"]) {
    [currentTitle appendString:string];
} else if ([currentElement isEqualToString:@"content"]) {
    [currentLink appendString:string];
 }
 }

Я могу получить идентификатор, заголовок и значение содержимого и отобразить его в виде таблицы. Как я могу получить URL-адрес изображения тигра и отобразить его в виде таблицы. Пожалуйста, помогите мне. Спасибо.

1 Ответ

2 голосов
/ 08 февраля 2010
   - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{            

    currentElement = [elementName copy];
    if ([elementName isEqualToString:@"media:thumbnail"])
    imageUrl=[attributeDict objectForKey:@"url"];
}

Поскольку у вас уже есть оператор if в этом методе, используйте else if для этого

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...