Почему FMX TListView на прокрутке отстает на Android?

Есть ли какой-нибудь способ избежать задержки на Android, когда заполненный TListview на скроллбук уходит с экрана и возвращается? Похоже, что он пытается заполнить все элементы в списке, прежде чем появиться на экране.

Пример кода: ScrollBox1 - "Клиент" со знаком, ListView1 на ScrollBox1, Button1 на ScrollBox1;

procedure TForm1.FormCreate(Sender: TObject);
var
  LItem: TListViewItem;
  I: Integer;
begin
  //just...
  ListView1.Height := ListView1.ItemAppearance.ItemHeight;
  ListView1.Position.X := 0;
  ListView1.Position.Y := 0;

  // To achieve the best performance use BeginUpdate and EndUpdate.
  ListView1.BeginUpdate;
  try
    for I := 1 to 3000 do
    begin
      LItem := ListView1.Items.Add;
      LItem.Text := IntToStr(I);
    end;
  finally
    ListView1.EndUpdate;
  end;

  //expand form
  Button1.Position.X := 1000;
  Button1.Position.Y := 1000;
end;

0 ответов

Другие вопросы по тегам