我刚刚更改了我的tableview以读取富文本而不是纯文本,因此我的解决方案是将富文本加载到UIWebview中,然后将webview添加到tableview单元格内容视图中。 但是,通过此更改,文本根本不再显示。这是-cellForRowAtIndexPath:
的代码-(UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellTVIdentifier = @"CellTVIdentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellTVIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellTVIdentifier]
autorelease];
}
int row = indexPath.row;
NSString *cellString = [theArray objectAtIndex:row];
// replaced cell.textLabel.text=cellString;
// with
UIWebView *webTVCell = [[UIWebView alloc] init];
[webTVCell loadHTMLString:cellString baseURL:nil];
[cell.contentView addSubview:webTVCell];
[webTVCell release];
return cell;
但是,cellString中的文本不再出现在tableview的任何单元格中。有人可以帮忙吗?非常感谢。
答案 0 :(得分:0)
UIWebView *webTVCell = [[UIWebView alloc] initWithFrame:cell.bounds];
尝试此而不是UIWebView *webTVCell = [[UIWebView alloc] init];
UIWebView
不适用于其他滚动条(如UITableView);
要调整单元格的大小,您应该使用UITableView.rowHeight
属性或以下UITableViewDelegate
方法:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
顺便说一下,[UITableView reloadData]
通常是更新表格的错误决定。