首页 > 解决方案 > VertScrollBox 当底部到达 android 和 IOS 时检测

问题描述

我有GridLayout1一个VertScrollBox1. 垂直滚动框滚动显示网格布局的内容。我需要检测垂直滚动框何时到达底部,以便将更多内容加载到网格布局中。每当再次达到底部时再做一次。

我怎样才能做到这一点?

标签: androidiosdelphifiremonkeydelphi-10.2-tokyo

解决方案


使用. OnViewportPositionChange()_ VertScrollBox1然后一些简单的算术告诉你什么时候处于底部:

uses Math, ...;
// ...

procedure TForm1.VertScrollBox1ViewportPositionChange(Sender: TObject;
  const OldViewportPosition, NewViewportPosition: TPointF;
  const ContentSizeChanged: Boolean);
begin
  if CompareValue(NewViewportPosition.Y, GridLayout1.Height - VertScrollBox1.Height) = EqualsValue then
    Memo1.Lines.Add('At bottom, time to grow and load more content to the GridLayout');
end;

由于我们比较的值是浮点数,因此Math.CompareValue()用于比较。

或者function SameValue(),也在Math单位


推荐阅读