2010-11-09 9 views
0

Comment puis-je définir un TTStyledTextLabel à l'intérieur d'un UITableView. Chaque TTStyledTextLabel contient du code HTML analysé.Afficher un TTStyledTextLabel dans un UITableView

Voici ce que j'ai, je réalise que c'est probablement complètement faux.

TTStyledTextLabel* label = [[TTStyledTextLabel alloc] autorelease]; 
cell.textLabel.text = [TTStyledText textFromXHTML:tempString lineBreaks:YES URLs:YES]; 

App Crashes au lancement. Je pense que c'est parce que je définis la propriété .text avec quelque chose qui n'est pas du texte. Cependant, je ne sais pas quoi d'autre à définir.

Répondre

0

Le code suivant fera ce que vous voulez. Malheureusement, je n'arrive pas à comprendre comment régler automatiquement la hauteur. Si la mémoire n'est pas un problème, vous pouvez conserver un tableau séparé de TTStyledTextLabels et référencer leurs hauteurs.

dans votre loadview:

CGRect cgRct2 = CGRectMake(0, 35, 320, 375); //define size and position of view 
    tblView = [[UITableView alloc] initWithFrame:cgRct2 style:UITableViewStylePlain]; 
    tblView.dataSource = [self constructDataSource]; 
    tblView.delegate = self; 
    //[tblView reloadData]; 
    [myView addSubview:tblView]; 

dans votre classe:

-(TTListDataSource *)constructDataSource { 
    NSLog(@"constructDataSource"); 
    NSMutableArray * namesArray = [[NSMutableArray alloc] init]; 

    //ADD ITEMS 
    [namesArray addObject:[TTStyledText textFromXHTML:[NSString stringWithString:@"some XHTML"]]]; 




    TTListDataSource * dataSource = [[TTListDataSource alloc] init]; 
    for (int i = 0; i < [namesArray count]; i++) { 
     TTStyledText * text = [namesArray objectAtIndex:i]; 

     [dataSource.items addObject:[TTTableStyledTextItem itemWithText:text]]; 
    } 

    [namesArray release]; 
    return dataSource; 
} 
Questions connexes