• 如何判断一个APP页面是flutter页面还是原生页面?
  • 发布于 2个月前
  • 89 热度
    0 评论
  • CEBBCt
  • 4 粉丝 23 篇博客
  •   
一个简单的小技巧快速判断某个页面是不是flutter页面: 双指/三指滑动页面,页面滚动速度是滑动速度的两倍/三倍。

主要原因是在多指拖动事件处理中,flutter的处理逻辑是累加多个手指的操作效果 。大家可以本地尝试通过记录每个手指的移动路径,在handleEvent中获取平均移动Offset(而不是累加效果)来解决这个问题。
void _checkMultiPointerUpdate() {
    if (_multiPointerMoveTrackers.isEmpty) {
      return;
    }
    final Offset localDelta = _getMultiPointerLocalDelta();
    final Offset position = _getMultiPointerPosition();
    final Offset localPosition = _getMultiPointerLocalPosition();
    _checkUpdate(
        sourceTimeStamp: _multiPointerMoveTrackers.last.timeStamp,
      delta: _getDeltaForDetails(localDelta),
      primaryDelta: _getPrimaryValueFromOffset(localDelta),
      globalPosition: position,
      localPosition: localPosition,
    );
  }

用户评论