我在使用集合视图时发现了一些奇怪的东西。我用一个文本标签创建了一个非常简单的海关单元集合视图。如果我用简单的东西填充文本标签......
func collectionView(_ collectionView: UICollectionView, willDisplay cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
(cell as? CustomCell)?.textLabel = "ASDASDLAKJD"
}
然后无论滚动速度有多快,集合视图都会滚动。
然而,我注意到某些独特的字符导致滚动变为lagg。这是我发现滞后的一个字符/符号
func collectionView(_ collectionView: UICollectionView, willDisplay cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
(cell as? CustomCell)?.textLabel = "ᴥ"
}
现在滚动时,流量显着不稳定且几乎不可滚动。是否有任何已知的ios在处理某些独特字符时遇到问题? BTW字体是systemFont,如果重要的话。谢谢!
答案 0 :(得分:0)
我也在这个问题上打了很长时间。完美的英文本地化滚动。滚动中文或日文本地化时可怕的滞后。
问题是视图剪辑。似乎是UIKits字体渲染引擎中的一个错误。
检查您的视图层次结构,查看激活clipsToBounds
的视图。例如:
UICollectionViewCell - > ViewA - > ViewB - > ViewC - >的UILabel
其中ViewB.clipsToBounds
(或相同的ViewB.layer.masksToBounds
)设置为true
。 (设置为真的常见情况是圆角)
对UICollectionViewCell的所有子视图禁用clipsToBounds
,然后重试。如果您的设计师仍希望在您的单元格中的某个位置设置圆角,则必须具有创造性。