2014-09-07 3 views
0

У меня есть UILabel, который не появится.UILabel не показывает строку текста, которая отображается в консоли

Если я использую api2Cell.labelDescription.text = @"Hello";, тогда текст появляется, но когда я пытаюсь получить текст из XML (который появляется в консоли), он не будет отображаться на ярлыке.

FeedRSS *feedDan = (FeedRSS *)model; 
MRWebListTableViewCellTwo *api2Cell = [tableView dequeueReusableCellWithIdentifier:@"YourAPI2Cell"]; 
NSString *description = [self removeHTMLTags:feedDan.description]; 
api2Cell.labelDescription.text = description; 
NSLog(@"DescriptionString RSS: %@", description); 

консоль показывает:

DescriptionString RSS: 
BOSTON -- Jared Sullinger will always wonder what might have been if Evan Turner had returned for his senior season at Ohio State. evanalmighty12 on... 

Но метка пустой. Не показывает null, просто остается пустым. Иногда, когда я нажимаю и удерживаю ячейку, текст будет отображаться на мгновение. Поэтому я просто не понимаю. Я установил контрольные точки и т. Д.

Может ли кто-нибудь помочь? Благодаря!

Вот метод removeHTMLTags:

- (NSString *)removeHTMLTags:(NSString *)str { 
    NSMutableString *temp_str = [[NSMutableString alloc] initWithString:str]; 
    NSRange openTag = [temp_str rangeOfString:@"<"]; 
    NSRange closeTag = [temp_str rangeOfString:@">"]; 

    while (openTag.length > 0) { 
     NSRange range; 
     range.location = openTag.location; 
     range.length = (closeTag.location - openTag.location) + 1; 
     [temp_str setString:[temp_str stringByReplacingCharactersInRange:range withString:@""]]; 

     openTag = [temp_str rangeOfString:@"<"]; 
     closeTag = [temp_str rangeOfString:@">"]; 
    } 

    [temp_str replaceOccurrencesOfString:@"&Auml;" withString:@"Ä" options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 
    [temp_str replaceOccurrencesOfString:@"&Aring;" withString:@"Å" options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 
    [temp_str replaceOccurrencesOfString:@"&AElig;" withString:@"Æ" options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 


    while ([temp_str rangeOfString:@" "].location != NSNotFound) { 
     [temp_str replaceOccurrencesOfString:@" " withString:@" " options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 
    } 

    while ([temp_str rangeOfString:@" ."].location != NSNotFound) { 
     [temp_str replaceOccurrencesOfString:@" ." withString:@"." options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 
    } 

    while ([temp_str rangeOfString:@" ,"].location != NSNotFound) { 
     [temp_str replaceOccurrencesOfString:@" ," withString:@"," options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 
    } 

    while ([temp_str rangeOfString:@" ;"].location != NSNotFound) { 
     [temp_str replaceOccurrencesOfString:@" ;" withString:@";" options:NSLiteralSearch range:NSMakeRange(0, [temp_str length])]; 
    } 

    return temp_str; 
} 

ответ

0

Может быть, это потому, что есть новая линия в начале description.

Попробуйте использовать:

api2Cell.labelDescription.text = [description stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; 
+0

Это является удивительным спасибо так много он работал !!! Но быстрый вопрос, потому что я все еще не полностью вижу «новую строку в начале описания». Где вы это видите? Я знаю, что мне это не хватает, и я хочу, чтобы я полностью понял, что вы решение, хотя я знаю, что это правильно и работает. Благодаря! – 2014-09-07 14:25:19

+0

обычно с веб-содержимым не видно. Но в вашем журнале строка «BOSTON - Jared Sullinger ...» начинается с новой строки. Это заставило меня так думать. – rptwsthi

+0

Ahh, thats awesome, спасибо, что поймали это - – 2014-09-07 18:36:21

Смежные вопросы