Динамическое приложение Delphi TListView работает в Windows, но не работает на Android

#android #delphi #rad-studio

Вопрос:

Я борюсь с проблемой в Embarcadero RAD Studio 10.4

Я создаю приложение для нескольких устройств в Delphi, у меня есть вкладки, которые содержат списки TListView в динамическом исполнении. В режиме дизайна Toogle я устанавливаю четыре приложения Ttextobject, затем заполняю их текстом из веб-сервиса.

Результат в Windows target в порядке, но когда я загружаю Android, внешний вид не в порядке.

Табл. 2: введите описание изображения здесь

Табл. 3: введите описание изображения здесь

Мой код:

 procedure TForm14.TabItem2Click(Sender: TObject);
var
  j: integer;
  LVI: TListViewItem;
  LPhs: Purchase_Headers;
  LHeadersCount: integer;
begin
  LPHs := GetPurchHeaderList();
  LHeadersCount := GWMS.HeadersCount();
  j :=0;
  ListView1.BeginUpdate;
  ListView1.Items.Clear;
  repeat
    LVI := ListView1.Items.Add;
    LVI.Data['Text1'] := LPHs[j].No;
    LVI.Data['Text2'] := LPHs[j].Pay_to_Name;
    LVI.Data['Text3'] := LPHs[j].Expected_Receipt_Date;
    LVI.Data['Text4'] := LPHs[j].Vendor_Shipment_No;
    j := j 1;
  until j=LHeadersCount;
  ListView2.EndUpdate;
end;



procedure TForm14.TabItem3Click(Sender: TObject);
var
  j: integer;
  LVI: TListViewItem;
  LPhs: Purchase_Headers;
  LHeadersCount: integer;

begin
  LPHs := GetPurchHeaderList();
  LHeadersCount := GWMS.HeadersCount();
  j :=0;
  ListView2.BeginUpdate;
  ListView2.Items.Clear;
  try

   for j := 0 to LHeadersCount-1
    do begin
      LVI := ListView2.Items.Add;
      LVI.Data['PH_no'] := LPHs[j].No;
      LVI.Data['PH_name'] := LPHs[j].Pay_to_Name;
      LVI.Data['PH_ship'] := LPHs[j].Expected_Receipt_Date;
      LVI.Data['PH_vendno'] := LPHs[j].Vendor_Shipment_No;
    end;

  finally
    ListView2.EndUpdate;
  end;
 

It seems the Android can’t take the DynamicApperance layout, on the Tab2 only find the Item.Text1 ApperanceObjectName, on the Tab3 can’t find any ApperanceObjectName. The Android version is 9, the phone is Urovo DT50. (I’ve been tried Realme 6 in Android 10, but same faulty appearance)

Can somebody help me please?