UITableView和UIWebView在单元格中的性能不好



我在单元格中有一个UITableViewUIWebView。我想显示的数据是从web获取的,存储在数组中,然后通过UIWebView显示。我必须使用WebView,因为我有一些MathJax只能通过它。

当我在UITableView中滚动时,当WebView加载HTML时,我会在一瞬间得到糟糕的性能。

有什么办法解决这个问题吗?

我脑海中浮现的是sope预填充webViews,但我不确定这是否可能。我在网上没有发现任何有用的东西。

有什么想法吗?

编辑:我以前没有添加代码,因为这是一个普遍的问题,任何包含UIWebViewUITabelView都会有这个性能问题。但现在是:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
     SuperTraenerHistoryCell *cell = (SuperTraenerHistoryCell*)[tableView  
dequeueReusableCellWithIdentifier:@"SuperTraenerHistoryCell"];
    if (cell == nil){
        NSArray* nib = [[NSBundle mainBundle] loadNibNamed:@"SuperTraenerHistoryCell" owner:self 
options:nil];
        cell = [nib objectAtIndex:0];
    }
    [cell.answer loadHTMLString:myAnswer.answer_text baseURL:[NSURL URLWithString:NSTemporaryDirectory()]];
}

SuperTraenerHistoryCell.h

@interface SuperTraenerHistoryCell : UITableViewCell
@property (strong, nonatomic) IBOutlet UIWebView *_answer;
@property (strong, nonatomic) IBOutlet UIImageView *correct;

@end

在webView中,我显示数据,在UIImageView中,如果问题回答正确或错误,我显示绿色或红色符号。

我假设单元格的answer属性是WebView,这显然不是在tableviewcell中显示信息的最有效方式,因为加载内容是异步的。

如果是这样,由于您的内容在应用程序中似乎处于脱机状态,请尝试使用NSAttributedText来显示格式化文本,或者将您的内容拆分为UIImageViewUILabel,这将更快地显示。

不管怎样,信息如此之少,很难帮助你。如果你编辑你的帖子并添加SuperTraenerHistoryCell的标题,可能会对这里很有帮助。

最新更新