-
Постов
851 -
Зарегистрирован
-
Победитель дней
129
Весь контент Andrey Efimov
-
Всё, это последний ответ вам (на сегодня). Читайте внимательно моё последнее сообщение. А ещё читаем ВикипедиЯ - PNG От того, что вы изменили расширение картинок, их формат не меняется. Чтобы изменить формат изображения, его нужно открыть в любом редакторе изображений и пересохранить в нужном формате. p.s. Разговор про то, как сохранить картинку в формате png, даже не связан с firemonkey.
-
Зачем вам это? наймите нормального программиста и он напишет вам приложение... И я не вижу, чтобы вы сами пытались найти ошибку, даже теперь когда я вам указал на ошибку, вы ведёте себя так как будто я вам ничего не говорил... Напишу ещё раз: Ваши ошибки: Вы зачем загружаете картинки с расширением «.png», когда они на самом деле в GIF формате?? Решение: Загрузить картинки в PNG формате с расширением ".png". У Image1 выставить свойство WrapMode: iwStretch У вас почти всё лишнее, нужно было оставить процедуры "TForm1.FormCreate" и "SQLSelect"...
-
Пока могу только посоветовать статью "Получаем список доступных устройств хранения информации". Важно: Третий метод будет работать на всех версиях Android до 4.3. С версии 4.3 произошли значительные изменения в организации файлов. К сожалению, у меня нет устройства с Android 4.3 чтобы провести анализ и написать код для версий выше 4.3. И второе, приложения, написанные в Делфи, по какой-то причине, не могут прочитать файл mounts. Я предполагаю, что если бы файл можно было прочитать, то код для версий выше 4.3 основывался на чтении этого файла. UPD (25.11.14). Для Android 4.4.* описано тут: Android 4.4 и запись на внешнюю карту памяти...
-
Ну вот вы опять… Зачем вы выложили весь проект целиком?! Я же сказал вам выложить чистый проект, на котором воспроизводится ошибка или почистить этот, оставить только минимально необходимый код для воспроизведения ошибки… Далее… Я уже не раз писал вам, чтобы вы не просто слепо копировали чужой код, а ещё и разбирали его, похоже вам просто не хочется этого делать. В данном случае всё опять повторяется, копируете код не думая. Если бы вы почистили проект, то нашли бы причину сами. А так мне пришлось делать это за вас. И, похоже, вы даже не пытались разобраться самостоятельно, а потом удивляетесь, что у вас не работает приложение. Ваши ошибки: Вы зачем загружаете картинки с расширением «.png», когда они на самом деле в GIF формате?? Так же вам стоит обратить внимание на файл «FMX.FontGlyphs.Android.pas», здесь сами догадаетесь. p.s. Текст выше мог показаться грубоватым, на самом деле, я всегда готов помочь, но только при условии, что человек хотя бы пытается сам разобраться в коде.
-
[Отклонение] Приложения с SQLite не запускаются на Android 2.3.6
Andrey Efimov опубликовал вопрос в SQL Lite
Один из посетителей моего блога прочитав статью, в которой создаётся игра для детей с использование SQLite, в комментариях сообщил «На Android 2.3 вылетает и на устройстве и на эмуляторе, пытался сам найти и устранить проблему, так и не получилось, выше Android 4.0 работает прекрасно, где копать, не ясно.». Я пообещал проверить и сегодня, на очень маленький промежуток времени, получилось достать устройство Samsung Galaxy S Plus (I-9001). Попробовал запустить своё приложение, и выпало сообщение «Произошла неожиданная остановка приложения Rebusy (процесс com.embarcadero.Rebusy). Повторите попытку.» Предположив, что проблема связана именно с работой SQLite, решил запустить (через F9) стандартный сниппет (RAD Studio\12.0\Samples\MobileCodeSnippets\SQLite) и ошибка повторилась. Отчёт приложил log.zip. После этого попробовал запустить приложение к статье «Splash Screen», запускается, но сам сплеш скрин не успевает появиться . Потом попробовал запустить приложение из статьи «Файловый менеджер», запустилось и работало без проблем. Вопросы: Что за баг такой может быть? Может быть, кто-то ещё может проверить данное поведение (у стандартного сниппета) на устройстве с Android 2.3.3 – 2.3.6? Нужно ли сообщать о нём в QC или в XE6 уже исправили? Версия Android: 2.3.6 Версия IDE: Delphi XE5 Update 2 19.0.14356.6604 Скриншотов не приложу, т.к. забыл сделать их . Update. Нашёл что-то похожее в QC (119856), а может и то, что нужно. Я так понимаю исправили в XE6... p.s. Сейчас заметил, что исправили ещё один мой баг(в TMemo), класс! остаётся ещё два)) -
Я других способов изменения стиля не знаю. Может быть, Ярослав что-то подскажет. Если необходимо внести небольшие изменения в стандартный стиль, например, изменить расстояние между картинкой и текстом в ListBoxItem, то можно создать и подгрузить стиль только с вашим изменением, тогда сам файл (в данном примере) будет весить всего 34 КБ.
-
Подключать разные стили к вашему проекту можно при помощи TStyleBook. Вносить изменения в стиль можно при помощи Bitmap Style Designer или TStyleBook. На форуме, в этом же разделе, достаточно тем про это: Где взять стандартный стиль в FireMonkey для iOS и Android, используемый по умолчанию? Как поменять цвет выделенного итема в ListBox для андроид стиля?
-
Я вижу только одно решение, создать свой собственный "TOpenDialog". Т.е. будет открываться либо вкладка со списком директорий и файлов, либо всплывающая форма с тем же списком. Сложного в реализации ни чего нет, т.к. в Delphi уже всё готово (System.IOUtils).
-
При запуске приложения через Delphi, старая версия удаляется и устанавливается новая. Чтобы избежать удаления необходимых файлов на время отладки, поместите их в другую папку, например, создайте папку для вашего приложения в корне карты памяти. Однако я не рекомендую использовать такую схему хранения данных в релиз версиях, т.к. если пользователь удалит ваше приложение, то эти файлы останутся на месте, т.е. будет мусор на карте памяти.
-
Ярослав, Объясняю: Например, на форме лежит Layout1(Align: alTop; Height: 160), на нем лежит Timage(Align: alCenter; Height: 150; Width: 310). Т.е. размеры Timage фиксированные. Картинки, которые будут подгружаться в этот Timage не имеют каких-то стандартов по размерам, т.е. размер может быть «Height: 150; Width: 310» или «Height: 100; Width: 400». Чтобы они нормально выглядели и не мелко и не размазано, мне необходимо изменять их размеры (автоматически или через код приложения) пропорционально, подгоняя картинку под размер Timage. Единственный вариант, который работает и проверен мной, описан выше. Это перед компиляцией приложения поместить любую картинку в «MultiResBitmap». Тогда любые картинки, подгружаемые в Timage (во время использования приложения), сами, автоматически, пропорционально изменяют свои размеры. Использовать свойство «WrapMode: iwStretch» не вариант, т.к. большие картинки становятся сплющенными и т.п. В общем, пока, буду использовать «левую» картинку, чтобы все остальные автоматически подстраивались.
-
Здравствуйте, Сергей! Я понимаю, что если изображение по размерам меньше TImage, то оно идёт по центру и не масштабируется до границ TImage. Но если изображение больше размеров TImage, то оно уменьшается до границ TImage с сохранением пропорций. Мне же нужно чтобы изображение всегда подгонялось под размеры TImage при этом сохраняя пропорции. Если вставлять картинку с оригинальными размерами (Например: Width: 310; Height: 150), то выглядит она мелко и не соответствует размеру TImage. Вот попытался сейчас изменить размеры так: Image1.Bitmap.Width := Trunc(Image1.Width * 1.34); Image1.Bitmap.Height := Trunc(Image1.Height * 1.34); Image1.Bitmap.LoadFromStream(InStream); Но не сработало... Может быть, у вас есть ссылки на материал, почитать? Как вообще правильно такое реализовать (вы подскажите, в какую сторону копать, а я уже попробую сам разобраться)?
-
Позволю себе обновить данную тему. 05.03.14 Стали известны планы по развитию продуктов компании Embarcadero на 2014 год. Один из пунктов «Advertising and Payments components for Android and iOS», т.е. в RAD Studio появится возможность работы с рекламой и платежами. Оригинал: RAD Studio, Delphi and C++Builder Roadmap - March 2014
-
Баг замечен на Android. Предположим у нас есть приложение, в котором по нажатию на кнопку подгружается картинка в «TImage» (Width: 310; Height: 150). Картинки могут быть как меньшего размера (например, Width: 215; Height: 150), так и большего (Width: 440; Height: 150). Высота указана одинаковой для примера, чтобы было проще понять, как выглядит баг. Я сделал три картинки и поместил их в ресурсы приложения. Для обозначения границ «TImage», поместил «TImage» в «TRectangle». Подгружаю из ресурсов: var InStream: TResourceStream; i: integer; procedure TForm1.Button1Click(Sender: TObject); begin if i=3 then i := 1 else i := i+1; // Load image InStream := TResourceStream.Create(HInstance, 'Test_' + IntToStr(i), RT_RCDATA); try Image1.Bitmap.LoadFromStream(InStream); finally InStream.Free; end; end; Если мы ни чего не добавляли вручную в «MultiResBitmap», то все подгружаемые в «TImage» картинки не подстраиваются под размеры «TImage», т.е. остаются в оригинальных размерах. А теперь мы добавим любую картинку в «MultiResBitmap» с настройкам по умолчанию: Например, картинку Width: 380; Height: 120. И в таком виде компилируем приложение, вот что мы получим: Как видите, теперь все картинки растягиваются по бОльшему размеру одной из сторон самой картинки, т.е. подгоняются автоматически под размеры TImage(Width: 310; Height: 150) сохраняя при этом пропорции сторон. Вопрос: Как исправить ситуацию своими силами, т.е. сделать как при добавлении любой картинки в «MultiResBitmap», но без ручного добавления картинки? Чтобы все подгружаемые картинки сохраняли пропорции и при этом растягивались также по размерам «TImage». p.s. По поводу прозрачности тема на форуме тоже есть. Тестовое приложение прикладываю.TImageBitmap.zip
-
Обязательно, пока могу только посоветовать посмотреть в сторону "Создание службы(Service)". Пример тут: http://blog.blong.com/2013/11/delphi-and-android-services.html Продолжение: http://blog.blong.com/2013/11/delphi-and-android-services-part-2.html
-
Всегда ищите ответ на ваш вопрос в поиске. Тема: Как массово задать размер шрифта у всех контролов? Как изменить размер шрифта: CornerButton1.Font.Size := 4; CornerButton1.StyledSettings := CornerButton1.StyledSettings - [TStyledSetting.ssSize];
- 3 ответа
-
- Font
- TextSettings
-
(и ещё 1 )
C тегом:
-
Если приложение одно, то можно запускать его как сервис и уже делать всё, что захочется, в любое время. Вообще тема интересная, надо будет рассмотреть её подробнее.
-
Не вижу смысла делать два приложения. Вот, например, моя версия приложения для чтения RSS одного известного в сообществе сайта - http://delphifmandroid.blogspot.com/2014/01/rss-delphifeedsru-just-for-fun.html. Естественно написано для примера.
-
Для запуска других приложений можно воспользоваться Intent’ами (намерения) - developer.android.com/reference/android/content/Intent.html По второму пункту ни чего пока не могу сказать, т.к. сам ещё не сталкивался с планировщиком.