0

我已阅读Flambe 指南中的相关帖子,但看不到 clone() 函数的任何用途。各种事件类(如PointerEvent 类)的 API 包含以下注释:

注意:出于性能原因,PointerEvent 实例被 Flambe 重用。使用 clone() 保留对事件的引用。

我有3个问题:

  1. 即使我的代码仍在处理它,PointerEvent 对象是否可能会发生变化?
  2. 什么时候应该使用 clone() 函数?
  3. 在处理 Flambe 事件时,我还应该了解其他最佳实践吗?
4

1 回答 1

1
  1. 在同一帧中应该是相同的,但我不确定这是否确定。我使用该规则,如果您将其传递给不同的实例或想稍后重用它,请克隆它。
  2. 当您想将事件存储在下一帧中时。我个人主要将 viewX/viewY 值复制到自定义点中(例如,如果您想自己检测滑动),因此不需要克隆整个事件,但这是我的偏好。
  3. 始终处置事件。他们返回一个SignalConnection. 将其设为私有成员并将其配置在函数中,或者如果您使用它,则将其dispose注册到 a中。Disposer这避免了内存泄漏和不需要的行为。
于 2016-07-30T19:03:45.837 回答