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

Просмотр картинок в ListView FMX


Aleks Serov

Вопрос

Всем привет! Посоветуйте как лучше сделать просмотрщик картинок из ImageList? (berlin, android)

Хочу выводить по три картинки(фото) в каждой строке списка с возможностью выбора любого фото для увеличения

Добавил на форму ImageList с 6-ю картинками, ListView в режиме DynamicAppearance(см.вложение) с прикрученным к нему ImageList

написал такой код для вывода 6-ти картинок в две строки:

var
a,i:Integer;
begin
a:=0;
for I:=1 to 2 do
begin
with ListView1.Items.Add do
    begin
    Data['Image1'] := a;
    Data['Image2'] := a+1;
    Data['Image3'] := a+2;
    end;
a:=a+3;
end;
end;

Все выводит, но есть одно маленькое "Но", при клике выделяется вся строка, тоесть сразу три картинки

а не одна по которой кликнул. Как решить эту проблему? 

listview.png

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

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

  • 0

Может реализовать нужную задачу будет проще на ListBox с тремя колонками добавляя в них картинки? Только как это реализовать я тоже не оч.представляю... ((

Изменено пользователем Aleks Serov
Ссылка на комментарий
  • 0
11 часов назад, Aleks Serov сказал:

Может реализовать нужную задачу будет проще на ListBox с тремя колонками добавляя в них картинки? Только как это реализовать я тоже не оч.представляю... ((

В ListBox может и проще , но фризить будет настолько жестко, что пожалеете о потраченном времени.

 

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

Сделал вывод изображений в ListBox, код такой:

var
I: Integer;
Size: TSize;
ListBoxItem: TListBoxItem;
Item: TCustomBitmapItem;
begin
Listbox1.BeginUpdate;
for I := 0 to 7 do
    begin
    ListBoxItem := TListBoxItem.Create(nil);
    Size := TSize.Create(130,245);
    ListBoxItem.StylesData['image'] := ImageList1.Bitmap(Size,i);
    ListBox1.AddObject(ListBoxItem);
    end;
Listbox1.EndUpdate;
end;

Но более 8 изображений почему-то вывести нельзя, если поменять в циклe 7 на 8 например то первое изображение

после вывода исчезнет, будут видны только последние 8. В чем трабла непонятно.. ((

 

 

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

Я бы сделал это кодом. Отключил бы стандартное выделение ЛВ. А кодом бы уже смотрел в какую область был клик/тап. В зависимости от этого рисовал бы ректагл вокруг нужного изображения

Но код получился бы конечно немного громоздкий.

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

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

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

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

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

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

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

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

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

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...