use*_*329 6 arrays performance user-interface controls
这个问题非常开放,可能这个问题的答案将取决于系统,但平均而言说这是显示不同状态的大矩阵(比如128个元素)的最佳方式?
根据选择,内存/ CPU性能是否有差异?我的应用程序中每个单元格的状态数为4,因此每个单元需要2位来表示它们的状态.每个单元格将由与状态相关的图像表示.
当然有区别。我将尝试说明这一点以及其所基于的假设。
控件的成本 = 控件的内存 + 控件的事件处理程序 + 控件的引用 + 事件管道中的一个额外控件
每个单元映射的“严格”控制的好处。概念清晰、代码简单、最容易思考。
紧密映射的成本:将每个控件的成本乘以单元格数量。
我要建议的替代方案假设紧密映射和松散“一环”映射之间的成本增量很重要。
替代方案:只需添加一个仅在您呈现的整个矩阵视图范围内注册事件的控件,有一段代码来确定指针位置和对应的单元格,然后根据用户仅更新该单元格那里互动。
这样做的优点是您只需一个额外的控制即可获得边际成本,但可以获得处理整个矩阵交互的好处。这种控制的边际效益比单一严格控制高得多。Aldo,实施成本很小,因为它是常见模式并且不太困难。
祝你好运!