【问题标题】:Xamarin Forms - attaching scrollview.Scrolled to a functionXamarin Forms - 将scrollview.Scrolled附加到函数
【发布时间】:2019-02-22 20:02:38
【问题描述】:

当我将滚动视图附加到这样的函数时

textScroll.Scrolled += (sender, e) => { onScrolled(); };

每次向上或向下滚动时,都会多次调用 OnScrolled()。我知道我可以获取内容的大小并将其与 ScrollY 值进行比较,显然 ScrollY 值每次都会改变,但据我所知,我不知道最后一次调用何时发生(每个用户滚动)。

我只想在每次滚动时调用一次,而现在每次都调用它失败,但只有在我知道我在最后一次调用时才采取行动。

这可能吗?

谢谢

【问题讨论】:

    标签: c# android ios xamarin.forms scrollview


    【解决方案1】:

    这是可能的,但每个平台都有一个自定义渲染器。

    iOS: 上,您需要为 DecelerationEndedWillEndDragging 实现委托。还实现 DecelerationEnded 的原因是允许用户 fling 并等待速度变为 0。

    Android 上它有点复杂。这是我关注并在渲染器中翻译成 c# 的原生 Android SO 帖子。对我来说效果很好。 Android: Detect when ScrollView stops scrolling

    实现两者后,您可以调用 Xamarin.Forms 视图以通知该视图已停止滚动(即最终调用)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-23
      • 1970-01-01
      相关资源
      最近更新 更多