Как лучше всего разрешать пользователям делать фотографии и использовать их также в виде таблицы? - PullRequest
2 голосов
/ 13 августа 2011

При разработке мобильного приложения и разрешении пользователю делать фотографии (которые позже будут показаны также в полном размере), но они также отображаются в табличных представлениях (средний размер) и даже в представлении заголовка пин-кода карт Google. создать миниатюру / ы для каждого изображения, которое пользователь берет для меньших? или мне просто использовать обычное изображение?

Я спрашиваю, потому что из обучающих программ, которые я видел, и как веб-разработчик, все, что я мог понять, - это то, что при использовании веб-службы для получения групп небольших изображений вы обычно сначала получаете миниатюры и только при необходимости получаете полную версию. размер изображения.

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

В любом случае, что лучше для этого делать?

Спасибо, Эрез

Ответы [ 2 ]

1 голос
/ 04 октября 2011

Все дело в использовании памяти, сбалансированной с производительностью.Если вы не создаете миниатюры для каждой фотографии, в памяти может быть только столько фотографий, сколько вы сможете сохранить до того, как получите предупреждения памяти или ваше приложение будет закрыто системой (возможно, только 6-8 полноразмерных UIImages).Чтобы избежать этого, вы можете записать фотографии в файловую систему и сохранить ссылку на их местоположение.Но тогда ваша прокрутка таблиц пострадает, поскольку она пытается прочитать фотографии из файловой системы для отображения.

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

1 голос
/ 30 сентября 2011

Я предполагаю, что вы в iOS4, и вы сохраняете фотографии в библиотеке активов, для вас уже есть метод.

http://developer.apple.com/library/ios/#documentation/AssetsLibrary/Reference/ALAsset_Class/Reference/Reference.html

Вы 'Мы ищем метод «миниатюры».

Итак, сохраните большое изображение и вычислите миниатюру, когда потребуется, я считаю, это путь.

...