Заполнение UITableView данными XML - PullRequest
0 голосов
/ 22 июля 2011

Я анализирую информацию со своего сервера и загружаю всю информацию, но пытаюсь выяснить, как добавить информацию в табличное представление. По сути, я хотел бы знать, как взять имеющуюся у меня информацию и добавить ее в NSMutableArray, затем подсчитать этот объект и добавить его в табличное представление, но каждый раз, когда я добавляю свои строки в изменяемый массив, я ничего не получаю ... но Я знаю, что вся информация корректно анализируется моими журналами и меткой, которую я разместил только для целей тестирования ... вот код, который я использую для получения информации. Как я могу взять строку, которую я использовал, и заполнить мой табличный вид?

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


    NSLog(@"Parser Was Called");

    if ([elementName isEqualToString:@"element"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"themeName"]);
    themeNameString = [NSString stringWithFormat:@"%@", [attributeDict 
    objectForKey:@"themeName"]];
    //Test first string
    label.text = themeNameString;
     }
    if ([elementName isEqualToString:@"element1"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"creator"]);
    themeCreator = [NSString stringWithFormat:@"%@", [attributeDict 
    objectForKey:@"creator"]];
    }    
    if ([elementName isEqualToString:@"element2"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"price"]);
    themePrice = [NSString stringWithFormat:@"%@", [attributeDict 
    objectForKey:@"price"]];

    }      
    if ([elementName isEqualToString:@"element3"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"twitterName"]);
    creatorTwitterName = [NSString stringWithFormat:@"%@", [attributeDict 
    objectForKey:@"twitterName"]];

      }  
    if ([elementName isEqualToString:@"element4"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"themeURL"]);
    cydiaLink = [NSString stringWithFormat:@"%@", [attributeDict 
    objectForKey:@"themeURL"]];

     }   
    if ([elementName isEqualToString:@"element5"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"themeDeciption"]);
    deciption = [NSString stringWithFormat:@"%@", [attributeDict 
    objectForKey:@"themeDeciption"]];

    }     

    if ([elementName isEqualToString:@"element6"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"themeScreenShots"]);
    screenShots = [NSString stringWithFormat:@"%@", [attributeDict 
     objectForKey:@"themeScreenShots"]];

    }        
    if ([elementName isEqualToString:@"element7"]) {
    NSLog(@"elements recieved %@", [attributeDict objectForKey:@"promo"]);
    tblViewImage = [NSString stringWithFormat:@"%@", [attributeDict 
     objectForKey:@"promo"]];

    } 

    }

Ответы [ 2 ]

0 голосов
/ 10 сентября 2012

На данный момент я вижу только вас, используя

– parser:didStartElement:namespaceURI:qualifiedName:attributes:

Чтобы получить все данные XML в массиве, у вас должно быть немного больше. Это документация о NSXMLParser.

http://developer.apple.com/library/ios/#documentation/cocoa/reference/NSXMLParserDelegate_Protocol/Reference/Reference.html

Зависит от того, что вы хотите, но я обычно использую

– parser:didStartElement:namespaceURI:qualifiedName:attributes:
– parser:didEndElement:namespaceURI:qualifiedName:
– parser:foundCharacters:

Но, опять же, это действительно зависит от того, что вы хотите, так как есть намного больше методов для выбора.

0 голосов
/ 24 июля 2011

у вас есть некоторые основные сомнения (все в порядке, у всех нас были такие), поэтому я думаю, что вы должны научиться самостоятельно выполнять эту задачу (Информация => Представлять информацию в таблице). Я бы порекомендовал вам следовать этому уроку:

http://www.icodeblog.com/2008/08/08/iphone-programming-tutorial-populating-uitableview-with-an-nsarray/

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

...