【问题标题】:A faster way to create complex UIView?创建复杂 UIView 的更快方法?
【发布时间】:2013-03-27 08:41:53
【问题描述】:

我有一个复杂的视图,比如说ComplexView,它由 10 个标签、2 个按钮、2 个大图像组成,我需要多次创建它(滚动、快速滚动!)——文本和图像在任何地方都不相同两个不同的ComplexView 视图。

目前我正在以编程方式创建每个 ComplexView 实例。

1)不知道有没有什么技巧可以加快每次创建uiview的过程?

2) 我看到我可以试验的唯一选择是:为这个特定视图创建一个 xib 文件并在那里提取我的视图的通用部分 - 我会从中受益吗?

更新:类似的问题,详细解释了 Seamus Campbell 在接受的答案中所说的内容:How to reuse/recycle custom element like uitableviewcell does?

【问题讨论】:

    标签: ios uiview


    【解决方案1】:

    实现高性能显示复杂视图的最佳方法是采用UITableView 方法并重复使用屏幕外视图,而不是创建新视图。最简单的方法是只使用表格视图和自定义单元格,但如果表格视图的假设没有意义,也可以自行滚动。

    【讨论】:

    • 感谢您的回答。 重新使用屏幕外视图...“也可以自己滚动...” - 您能否举例说明如何做到这一点?
    • 就像我说的,UITableView 提供了最简单的模型来实现这一点(即使你不使用它,你也应该看看它是如何重用视图的)。但是,如果您不想使用它,您可以在 -scrollViewDidScroll 中更新您的 UIScrollView,删除屏幕外的项目并将它们放入重用缓存中,对于屏幕上出现的项目,从重用缓存中提取并更新它们以显示新数据。
    • 啊,这些字符串帮助我理解了:puting/pulling in/from reuse cache ;)
    猜你喜欢
    • 2017-03-18
    • 1970-01-01
    • 2010-09-23
    • 1970-01-01
    • 2015-07-30
    • 2015-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多