Загрузка фотографий из галереи устройства

В iRidium Studio появилась возможность использования любого изображения из галереи вашего устройства непосредственно в проекте.

Для этого имеется команда IR.OpenPhotoGallery(), которая открывает галерею устройства. А также появилось событие IR.EVENT_RECEIVE_PHOTO_FROM_GALLERY, срабатывающее при получении изображения из галереи. На основе этих команд вы можете построить логику работы скрипта под ваши нужды.


Пример использования команд:

IR.AddListener(IR.EVENT_START, 0, function(){

if ( ! IR.OpenPhotoGallery() ) {

// Если фотогалерея не поддерживается на платформе выведем в Лог сообщение.
IR.Log( "is not supported on current platform" );

} else {

// Иначе подпишемся на событие получения картинки из галереи

IR.AddListener( IR.EVENT_RECEIVE_PHOTO_FROM_GALLERY, 0, function( name ) {

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

// объявляем переменную "photoName" и присваиваем ей значение с новым именем картинки, которое формируем из слов "photo_", времени в миллисекундах полученного с помощью команд Date( ).getTime( ) и преобразованного в строку, и добавляем в конец имени расширение файла ".png"

var photoName = "photo_" + new Date( ).getTime( ).toString( ) + ".png";

// далее заменяем имя исходного файла на имя нашей переменной.
IR.RenameFile("images/" + name, "images/" + photoName);

// установим нашу картинку на открытую в данный момент страницу
IR.CurrentPage.GetState(0).Image = photoName;
});
}
});

Пример готового проекта под планшет iPad Этот пример позволяет, при нажатии на кнопку, выбрать и установить изображение из галереи устройства на текущую страницу.

При запуске проекта на iPhone, стандартная галерея предлагает обрезать картинку, что приводит к неполному заполнению страницы картинкой!

Is dit artikel nuttig voor u?