在UITableView中显示TTStyledTextLabel

时间:2010-11-09 07:06:24

标签: iphone objective-c sdk ttstyledtextlabel

如何在UITableView中设置TTStyledTextLabel。 每个TTStyledTextLabel都包含一些已解析的HTML。

继承我所拥有的东西我意识到它可能是完全错误的。

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

App在发布时崩溃。我认为它是因为我使用非文本的东西设置.text属性。但是,我不知道还能设置什么。

1 个答案:

答案 0 :(得分:0)

以下代码将执行您想要的操作。不幸的是,我无法弄清楚如何自动设置高度。如果内存不是问题,你可以保留一个单独的TTStyledTextLabel数组并引用它们的高度。

中的

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];
你班上的

-(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;
}