Перейти к содержанию
Fire Monkey от А до Я
  • 0

TListView не отрисовываются картинки в Android


delphiec

Вопрос

Беда, совсем беда :(.... Имеется на форме TListView (listviewEdit.jpg), в него динамически загружается список с картинками полученными через idhttp + TmemoryStream.

 

.....
  private
    nowDrawed:string;
    ...
    Item: TListViewItem;
    ImageObject: TListItemImage;
    TextObject: TListItemText;
    groups:array of Tgroups;
    ...
.....

procedure Tmain.drawGroups();
var
  i:integer;
begin
try
  loader.Show;
  loader.ProgressBar.Max:=high(groups);
  loader.ProgressBar.Value:=0;
  Application.ProcessMessages;
  nowDrawed:='groups';
  ListView.Items.Clear;
  ListView.BeginUpdate;
  for i := 0 to high(groups) do
  begin
    Item := ListView.Items.Add;
    TextObject:=Item.Objects.FindObjectT<TListitemtext>('Text');
    TextObject.Text:=groups[i].caption;
    Item.Tag:=strtoint(groups[i].id);
    ImageObject:=Item.Objects.FindObjectT<TListItemImage>('Image');
    if ImageObject.Bitmap=nil then ImageObject.bitmap:=TBitmap.Create;
    http.loadImage(url+groups[i].image,ImageObject.bitmap);
    loader.ProgressBar.Value:=i;
    Application.ProcessMessages;
  end;
  ListView.EndUpdate;
  loader.hide;
except
  loader.hide;
end;
end;
procedure Thttp.loadImage(link:string;bitmap:Tbitmap);
var
  MS: TMemoryStream;
begin
try
  MS := TMemoryStream.Create;
  IdHTTP.Get(link,MS);
  MS.Position:=0;
  if not (bitmap=nil) then bitmap.LoadFromStream(MS);
  MS.Free;
except
end;
end;

Так вот, если собирать под Win64 (onWin.jpg), то всё отлично, но если под андроид (onAndr.jpg), то картинки отсутствуют. 

При этом, если на форму бросить TImage и передавать в функцию loadImage bitmap этого Timage, то всё отображается корректно.

P.S. Тестовое изображение в аттаче.

listviewEdit.jpg

onWin.jpg

onAndr.jpg

38594302-Modern-globe-icon-thin-line-for-web-and-mobile-modern-minimalistic-flat-design-Vector-dark-grey-icon-Stock-Vector.jpg

Ссылка на комментарий

Рекомендуемые сообщения

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...