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

Вывод/отображение нескольких картинок на форме


x11

Вопрос

Предисловие. Приложение (пока в качестве эксперимента для Android)  предназначено для объявлений. Думаю, что все знают про Avito, OLX и т.д. Т.е. для объявлений.

У каждого объявления, кроме кучи разных параметров (полей) есть фотографии (картинки).

Есть форма добавления/просмотра/редактирования одного объявления.

Теперь вопрос. Как лучше и правильней выводить фотографии? С помощью чего? ListBox + TImageControl или ListView + TImageControl? Может быть вместо TImageControl правильней использовать TImageViewer?

Я пока не понял, в чем кардинальные различия между ImageViewer и ImageControl.

Может быть в FMX есть что-то вроде слайдера или готовой галереи, чтобы можно было легко загрузить фотки туда и листать.

 

 

И второй вопрос вдогонку.

Как/где лучше и правильней хранить сами фотографии? В базе вместе со всеми остальными данными? Или в какой-нибудь папке? Если в папке, то в специальной недоступной пользователю или в какой-нибудь общедоступной и тогда фотки можно ьбудет смотреть и через галерею, и копировать их, и легко отправлять через мессенджеры средствами самого Аднроида + можно к облаку папку(и) подключить.

 

Если хранить в базе, то в этом случае я вижу более простой способ на случай если использовать приложение и на iOS. Т.е. код загрузки/сохранения фоток один и тот же.

 

Спасибо.

Изменено пользователем x11
Ссылка на комментарий

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

  • 0
  • Модераторы
34 минуты назад, x11 сказал:

Теперь вопрос. Как лучше и правильней выводить фотографии? С помощью чего? ListBox + TImageControl или ListView + TImageControl? Может быть вместо TImageControl правильней использовать TImageViewer?

достаточно использовать просто ListView

35 минут назад, x11 сказал:

Как/где лучше и правильней хранить сами фотографии? В базе вместе со всеми остальными данными? Или в какой-нибудь папке? Если в папке, то в специальной недоступной пользователю или в какой-нибудь общедоступной и тогда фотки можно ьбудет смотреть и через галерею, и копировать их, и легко отправлять через мессенджеры средствами самого Аднроида + можно к облаку папку(и) подключить.

хранить фото желательно хранить в папке на сервере

 

также на гите есть демка с плиточным отображением

Ссылка на комментарий
  • 0
1 минуту назад, Равиль Зарипов (ZuBy) сказал:

хранить фото желательно хранить в папке на сервере

на каком? нет никакого сайта/сервера, приложение самодостаточное

Ссылка на комментарий
  • 0
  • Модераторы
2 минуты назад, x11 сказал:

на каком? нет никакого сайта/сервера, приложение самодостаточное

эмм, тогда какой это сервис объявлении? локальный?

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

это не сервис, а просто приложение для себя, да - это локальная программа

я не волшебник, я пока только учусь :)

Изменено пользователем x11
Ссылка на комментарий
  • 0
  • Модераторы

если это просто для демки (для себя), то без разницы, на что фантазии хватит. если же реальная задача, то тогда:

  • приложение->сервак (php/python)->БД -- для данных
  • приложение->сервак (папка с файлами)->файлы -- для файлов, имена файлов лежат в БД
Ссылка на комментарий
  • 0
Цитата

Ссылка: http://blog.rzaripov.kz/2016/12/3-modernlistview.html 

Там про бесконечных скроллинг. Спасибо.

Но мне нужно показать 1-10 фоток пользователю и дать возможность с ними что-то сделать: отправить, удалить, переименовать, и т.д.

Ссылка на комментарий
  • 0
18 часов назад, x11 сказал:

Там про бесконечных скроллинг. Спасибо.

Но мне нужно показать 1-10 фоток пользователю и дать возможность с ними что-то сделать: отправить, удалить, переименовать, и т.д.

Это уже по вкусу...можно listbox, listview,scrollbox (и туда компоненты накидать динамически)

для 10 фоток и listbox сгодится.

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

Решил попробовать использовать TListBox.

В дизайне загрузил в свойство ItemData.Bitmap  картинку, но картинка не отображается.

ЧЯДНТ? Или ItemData.Bitmap не для отображения картинок?

Screenshot_6.png

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

А вот если я кидаю на ListBoxItem компоненту TImageViewer и в неё загружаю картинку, то она отображается. Не будет ли это накладно по ресурсам, если будет 5-10 картинок?

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

у ListBox есть свойство DefaultItemsStyles.Itemstyle и я там выбрал listboxitemstyle

Я так подумал, что один раз указал и хватит, каждому Item`у отдельно не нужно. А в справке пояснений нет.

Screenshot_1.png

Ссылка на комментарий
  • 0
3 часа назад, Равиль Зарипов (ZuBy) сказал:

не выставил нужный стиль для Item'a

А какой это нужный?

В списке нет ничего, связанного с image. А listboxitemstyle не помогает.

Screenshot_2.png

Изменено пользователем x11
Ссылка на комментарий
  • 0

 

15 часов назад, x11 сказал:

А listboxitemstyle не помогает.

Из стандартных иконку отображают: listboxitembottomdetail, listboxitemleftdetail, listboxitemnodetail, listboxitemrightdetail.

 

tstListbox1.zip

Ссылка на комментарий
  • 0
5 часов назад, x11 сказал:

Дело в том ,что нужна не иконка, а полноценное отображение разного типа картинок, т.е. фотографий.

Тогда стандартные стили Вам не подойдут. Создавайте свой стиль для ListBoxItem на базе стандартного или "с нуля". Тут описано как это можно сделать.

Вот подправил пример. Создал mylistboxitemstyle в котором только 2 элемента - text и image. Этот стиль загружен в StyleBook1 и указан в Listbox1.DefaultItemStyles.ItemStyle. Можете редактировать этот стиль прямо в StyleBook, добавляя новые элементы и располагая их как Вам нужно.

 

tstListbox1.rar

Ссылка на комментарий
  • 0
В 08.07.2017 в 20:16, x11 сказал:

я не волшебник, я пока только учусь

Когда разберетесь с ListBox и стилем, приступайте к изучению ListView (т.к. использование ListView оптимальнее для мобильных платформ)

Ссылка на комментарий
  • 0
13 часа назад, enatechno сказал:

Когда разберетесь с ListBox и стилем, приступайте к изучению ListView (т.к. использование ListView оптимальнее для мобильных платформ)

Лучше сразу с ListView начинать

Ссылка на комментарий
  • 0
14 часа назад, enatechno сказал:

Создавайте свой стиль для ListBoxItem

 

А если я использую все стандартные темы FMX? В каждую тему нужно что-то добавлять своё? Нет, этот вариант отпадает.

Ссылка на комментарий
  • 0
50 минут назад, x11 сказал:

Мне десяток фото на форме показывать.

Вы уверены, что лучше ListView?

Да. Если не хотите менять стандартные стили, то лучше использовать ListView c плиточным отображением, о котором писал Равиль в первом посте. Тем более, что в Ваших объявлениях (айтемах) должно отображаться много других полей.
Возможно, Вы сами сможете сделать такой вывод, ознакомившись с ранее обсуждавшимися темами:
 

 

 

Ссылка на комментарий
  • 0
11 минуту назад, enatechno сказал:

Тем более, что в Ваших объявлениях (айтемах) должно отображаться много других полей.

Нет. В данном случае речь идёт о форме добавления/редактирования объявления, где будет три закладки: основные параметры, дополнительные и вкладка Фото.

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

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

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

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

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

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

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

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

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

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