长非英语文本减慢UITableview

时间:2018-07-29 16:05:46

标签: ios swift uilabel

试图使用长非英语文本(波斯语)在UITableview中使用简单的UILabel进行工作,该UILabel没有额外的视图,只有2或3个约束,即使具有固定的高度,因此也没有使用不透明和非透明背景的额外高度计算,并且clipToBounds设置为true。 Tableview模式是正确的原因,因为它已经使用了一段时间,并且它对于1000多个字符的英文文本也能正常工作。 文字纯净,没有归属,这是我几个月来的问题,并且自一年前以来发现类似的问题而没有答案。

那么有什么想法可以解决这个问题吗? 任何方法都可以在cellforRow中调用label.text = ...吗?还是以某种方式异步而不弄乱事情? 尝试了单元缓存,但没有结果 对于我的情况,使用CoreText或CATextLayer太复杂了,因为单元格很复杂,我认为这可能是导致问题的原因,所以我开始在带有标签的简单单元格上进行测试,问题仍然存在 我在instagram或电报等应用中看到过类似的情况,没有任何问题,所以可能有办法吗?

提前感谢

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
     let cell = tableView.dequeueReusableCell(withIdentifier: "TempTextCell", for: indexPath) as! TempTextCell
     cell.tag = indexPath.row
     cell.contentLabel.text = TestVC.data[indexPath.row]

    return cell
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return TestVC.data.count
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    return UITableViewAutomaticDimension
}

将标签行设置为0并使用wordWrap,因此高度是动态的,但即使设置了固定高度也将滞后

0 个答案:

没有答案