При переводе своего приложения работающего под ОС Windows на Андроид столкнулся со следующей проблемой.
Я вывожу динамически ряд картинок на панель используя компонент TImage. Затем эти картинки могут быть отредактированы.
Для восстановления первоначальной картинки использовал свойство объекта TagObject, куда загружал TMemoryStream, в который сохранял первоначальный объект TBitmap.
Когда необходимо восстановить картинку, то из ее TagObject грузил в Image.Bitmap.
Под ОС Windows все работало отлично. Но вот когда попітался то же сделать для Android ничего не вышло.
Оказалось что попытка создать объект путем стандартной операции Image2.TagObject:=TMemoryStream.Create; ни к чему не приводит. Т.е. почему то TagObject остается равным NIL. TagObject можно присвоить только переменную потока после ее создания. Но не скопировать ее значение в TagObject. Т.е. хранить не получается.
Не могли бы подсказать в чем дело. Прилагаю тестовый исходник. В нем есть 2 картинки и 2 кнопки. По первой кнопке сохраняем 1 картинку в TagObject второй. По второй кнопке загружаем из TagObject в Bitmap первую картинку.
При компиляции под виндой все ОК, под андроидом - ошибка.
Вопрос
Марк
Версия XE 10.1 Berlin
При переводе своего приложения работающего под ОС Windows на Андроид столкнулся со следующей проблемой.
Я вывожу динамически ряд картинок на панель используя компонент TImage. Затем эти картинки могут быть отредактированы.
Для восстановления первоначальной картинки использовал свойство объекта TagObject, куда загружал TMemoryStream, в который сохранял первоначальный объект TBitmap.
Когда необходимо восстановить картинку, то из ее TagObject грузил в Image.Bitmap.
Под ОС Windows все работало отлично. Но вот когда попітался то же сделать для Android ничего не вышло.
Оказалось что попытка создать объект путем стандартной операции Image2.TagObject:=TMemoryStream.Create; ни к чему не приводит. Т.е. почему то TagObject остается равным NIL. TagObject можно присвоить только переменную потока после ее создания. Но не скопировать ее значение в TagObject. Т.е. хранить не получается.
Не могли бы подсказать в чем дело. Прилагаю тестовый исходник. В нем есть 2 картинки и 2 кнопки. По первой кнопке сохраняем 1 картинку в TagObject второй. По второй кнопке загружаем из TagObject в Bitmap первую картинку.
При компиляции под виндой все ОК, под андроидом - ошибка.
TestStream.rar
Ссылка на комментарий
6 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.