【问题标题】:UICollectionView lags on scroll when im rendering Hindi font渲染印地语字体时,UICollectionView 滚动滞后
【发布时间】:2017-07-10 17:25:01
【问题描述】:

我在集合视图单元格中使用印地语字体,集合视图中加载了近 15 个单元格

在滚动时它会滞后,当我使用英语时它滚动流畅,但是当我将语言更改为印地语时它开始在滚动时滞后

有什么办法可以解决这个问题吗?字体的任何字体缓存选项? 有什么方法可以使用 CoreText 渲染来改善这一点吗?

【问题讨论】:

  • 您是否在 cellForRow 中以属性字符串的形式处理文本呈现
  • 现在我正在这样做,我什至尝试作为文本但结果相同。 @Md.IbrahimHassan
  • 缩放字体会影响性能,让标签变大,或者保留默认的印地语文本并尝试是否仍然滞后
  • 我在 UITextView 中使用字体,我需要在印地语 @Lu_ 中显示大量文本
  • 所以你会有滞后

标签: ios objective-c swift xcode fonts


【解决方案1】:

我会推荐阅读this 文章。对UITableViewsUICollectionViews有一套全面的滚动优化实践

UPD

在你的情况下,我会调查TextKit documentation

从 UITextView 类创建的文本视图用于显示大量文本。底层 UITextView 是一个强大的布局引擎,称为 Text Kit。如果您需要自定义布局过程或需要干预该行为,则可以使用 Text Kit。

希望这会有所帮助。

【讨论】:

  • @inoky 对我来说字体渲染导致延迟
  • @AlbinCR 您是否尝试在滚动时将 collectionView 呈现为图像?
  • @AlbinCR 使用TextKit 链接更新了答案。我认为这是您可以找到答案的地方。
  • 收藏中没有图片查看只有文字
【解决方案2】:

最后,我找到了导致滚动延迟的问题:

出现延迟是因为 UITextView 的滚动被禁用,并且每次滚动时它都必须使用渲染字体计算高度。

我尝试了 UITextView 的固定高度,并且滚动启用了相同的滞后消失了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多