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

Andrey Efimov

Модераторы
  • Постов

    842
  • Зарегистрирован

  • Победитель дней

    123

Ответы сообщества

  1. Пост Andrey Efimov - сообщение в Как применить анимацию к элементу стиля? был отмечен как ответ   
    Проверил на Label и свойстве Opacity.
    У меня анимация срабатывает сразу, в design-time, без всяких галочек, просто положил на стиль лейбла и всё.
    Как получить доступ из кода:
    procedure TForm1.Button1Click(Sender: TObject); var   StyleObject: TFmxObject;   StyleAni: TFloatAnimation; begin   StyleObject := Label1.FindStyleResource('floatanimationstyle');   if (StyleObject <> nil) and (StyleObject is TFloatAnimation) then   begin     StyleAni := TFloatAnimation(StyleObject);     StyleAni.Duration := 0.9;     StyleAni.StartValue := 0;     StyleAni.StopValue := 1;     StyleAni.Start;   end; end; Проверил, данный код работает.
  2. Пост Andrey Efimov - сообщение в [Android] Как автоматически удалить приложение перед размещением нового? был отмечен как ответ   
    Заходим в меню "Run -> Parameters:Parameters", прописываем "-cleaninstall"(без кавычек).
  3. Пост Andrey Efimov - сообщение в Как использовать один файл стиля для нескольких форм? был отмечен как ответ   
    На ваш вопрос, уже есть ответ Как использовать один экземпляр TStyleBook для нескольких форм?
  4. Пост Andrey Efimov - сообщение в Возможно ли запустить анимацию с задержкой на время анимации? был отмечен как ответ   
    У анимации есть событие OnFinish, вам необходимо переопределить его на свой обработчик(код). Код будет выполняться только после завершения работы анимации.
  5. Пост Andrey Efimov - сообщение в [Android] Не удается использовать класс Camera.Size из Android API для изменения параметров камеры? был отмечен как ответ   
    Вот сырое решение, проверено на демке «Mobile Snippets\CameraComponent»:
    Открываем FMX.Media.Android.pas, находим procedure TAndroidVideoCaptureDevice.DoStartCapture;
    После
      if TPlatformServices.Current.GlobalFlags.ContainsKey(EnableGlassFPSWorkaround) and     TPlatformServices.Current.GlobalFlags[EnableGlassFPSWorkaround] then   begin     Params.setPreviewFpsRange(30000, 30000);     Camera.setParameters(Params);   end добавляем необходимые настройки:
      Params.setPreviewSize(800, 480);   Camera.setParameters(Params); Сохраняем, запускаем демо, и картинка отображается и сохраняется из TBitmap с разрешением 480x800.
      Картинку в демке сохранял так: imgCameraView.Bitmap.SaveToFile(TPath.Combine(TPath.GetPicturesPath, 'test.png')); Очень важно не забывать, что камеры в устройствах поддерживают только определённые списки разрешений. Например, у моей камеры минимальное разрешение 640x480, 800x480, и т.д. по возрастанию.
  6. Пост Andrey Efimov - сообщение в Установка (перенос) приложения на SD карту был отмечен как ответ   
    Вот, например, параметр installLocation в окне Project->Options->Version Info(Android). Все параметры, я описал у себя в блоге, также вы можете найти информацию по ним на английском языке в официальной справке.
  7. Пост Andrey Efimov - сообщение в [Android] Как изменить область разрешений (Permissions) приложению? был отмечен как ответ   
    Андроид требует от приложений, чтобы они сообщали, какой функционал устройства будут использовать при работе.
    Чтобы использовать какой-то функционал, необходимо запросить разрешение (дать права) у системы. Сделать это можно в окне «Uses Permissions»(Project > Options > Uses Permissions).
     
    Более подробно можно почитать в справке http://docwiki.embarcadero.com/RADStudio/XE6/en/Uses_Permissions
  8. Пост Andrey Efimov - сообщение в [Отклонение][XE6UPD1]Куда делась вкладка Orientation? был отмечен как ответ   
    Собственно покопался в QC, это баг.
    Похоже потеряли окошко...(как так?!     )
    Сам репорт тут QC 125992, в комментах предложили временное, очень ограниченное решение, позволяющее использовать только один из режимов. Решение ещё не проверял.
  9. Пост Andrey Efimov - сообщение в Не удается поменять первый день недели в TCalendarEdit был отмечен как ответ   
    По вашей личной просьбе обратил внимание на этот вопрос, но у меня Delphi XE6, т.е. проверить на XE5 просто нет возможности.
     
    Что необходимо знать:
    Компонент, который вы используете, является устаревшим, т.е. начиная с версии XE6 этого компонента нет в среде Что предлагают использовать вместо него – это компонент TDateEdit (Пример: Mobile Tutorial: Using a Calendar Component to Pick a Date (iOS and Android)) Я также попробовал использовать компонент TCalendar(Пример: FMX.DateTimeCtrls.TCalendar), и изменял в рантайме свойство, которое вы предложили, всё работает отлично. Выходы, которые вижу я:
    Найти человека с XE5 и попросить воспроизвести вашу ситуацию. Поставить более новую версию среды разработки и использовать новый компонент, который заменяет старый.
  10. Пост Andrey Efimov - сообщение в [iOS, Android] Как узнать MAC адрес? был отмечен как ответ   
    Для Андроид: можно воспользоваться классами для работы с "Wi-Fi", конкретно методом "getMacAddress". Полную обёртку для работы с Wi-Fi я уже написал, так что вам остаётся только подключить её (Пример и обёртка лежат тут: Android API: package "android.net.wifi" или обёртка для работы с Wi-Fi)
  11. Пост Andrey Efimov - сообщение в [iOS, Android] Как узнать серийный номер устройства? был отмечен как ответ   
    Для Андроид можно вот так: Получаем информацию об устройстве(Device Information)
  12. Пост Andrey Efimov - сообщение в [Android] Как можно изменить стиль кнопки в TListViewItem? был отмечен как ответ   
    В стиле есть ветка "listviewstyle", там вы найдёте все, что относится к "ListView".
  13. Пост Andrey Efimov - сообщение в [Mobile platform] где редактор стилей? был отмечен как ответ   
    Вносить изменения в стиль можно при помощи Bitmap Style Designer или TStyleBook.
     
    На форуме, в этом же разделе, достаточно тем про это:
    Где взять стандартный стиль в FireMonkey для iOS и Android, используемый по умолчанию? Как поменять цвет выделенного итема в ListBox для андроид стиля? Как изменить стиль по умолчанию для андроида? Почитайте форум...
  14. Пост Andrey Efimov - сообщение в [Android] Почему у меня не принимается стиль, загруженный в TStyleBook? был отмечен как ответ   
    Укажите стиль в форме, свойство StyleBook.
  15. Пост Andrey Efimov - сообщение в Где можно посмотреть пример работы компонента TBitmapListAnimation? был отмечен как ответ   
    Добрый день.
    Пример: http://docwiki.embarcadero.com/CodeExamples/XE5/en/FMX.AnimationDemoHD_Sample
    Справка: http://docwiki.embarcadero.com/Libraries/XE5/en/FMX.Ani.TBitmapListAnimation
  16. Пост Andrey Efimov - сообщение в Рекомендуемые системные требования для приложений, написанных на FireMonkey был отмечен как ответ   
    Справка и ещё раз справка: FireMonkey Platform Prerequisites
  17. Пост Andrey Efimov - сообщение в Можно ли изменить Accessory у конкретного ListViewItem? был отмечен как ответ   
    В таком виде и правда не меняется.
     
    А вот так, всё работает:
    var   l: TListViewItem; begin   l := ListView1.Items.Add;   l.Text := '';   l.Accessory := TAccessoryType.Detail; end; Не знаю с чем связано, т.к. у самого опыта работы с TListView мало, всё TListBox использую.
  18. Пост Andrey Efimov - сообщение в Есть ли возможность подключить готовые библиотеки(.So) в андроид для дальнейшей работы с ними? был отмечен как ответ   
    Есть, нужно писать обёртку.
    По поводу библиотеки BASS, ещё в сентябре 2013-го связывался с человеком, который переписал обёртку для FireMonkey, тогда та обёртка была не совсем стабильна. Тему можно посмотреть здесь http://www.un4seen.com/forum/?topic=15197.0, сейчас посмотрел, вроде на второй странице выложили новую версию обёртки.
     
    p.s. Если потестите, то отпишитесь о стабильности и функциональности (если не сложно)
  19. Пост Andrey Efimov - сообщение в [Android] Есть ли возможность отобразить иконку в системном статус баре? был отмечен как ответ   
    Пока мне известен только один способ отобразить иконку в статус баре – использовать Notifications
    Подробности:
    http://docwiki.embarcadero.com/RADStudio/XE6/en/Mobile_Tutorial:_Using_Notifications_(iOS_and_Android)
    http://developer.android.com/guide/topics/ui/notifiers/notifications.html
     
    Попробую поискать ещё варианты. 
     
    up. Похоже это единственный вариант.
    Вот ещё полезная ссылка (про размеры иконок в status bar): http://developer.android.com/design/style/iconography.html#notification
  20. Пост Andrey Efimov - сообщение в [Android] Покажите пример масштабирование пальцами был отмечен как ответ   
    Чем не устроил стандартный пример?
    C:\Users\Public\Documents\Embarcadero\Studio\14.0\Samples\Object Pascal\Mobile Snippets\InteractiveGestures\ImageZoom
  21. Пост Andrey Efimov - сообщение в Как получить объект стиля? был отмечен как ответ   
    Вроде как можно искать объект стиля, например иконку в ListBoxItem:
    var   StyleObject: TFmxObject;   StyleIcon: TControl; begin   // Ищем объект стиля - картинка. Лучше закешировать один раз, избежав постоянный поиск картинки    StyleObject := Item.FindStyleResource('icon');   if (StyleObject <> nil) and (StyleObject is TControl) then   begin     StyleIcon := TControl(StyleObject);     // и дальше работаем как с обычным контролом   end; end; попробуйте, может поможет.
  22. Пост Andrey Efimov - сообщение в Как получить путь к файлу в Андроид приложении? был отмечен как ответ   
    Для вашей ситуации:
     
    Добавляем файл «settings.ini» в «Deployment Manager», в столбце «Remote Path» для нашего файла прописываем путь  «.\assets\», после установки приложения на устройство, этот файл будет лежать в папке «/storage/emulated/0/Android/data/<application ID>/files».
    Получить быстрый доступ к этой папке можно при помощи «TPath.GetSharedDocumentsPath».
     
    Соответственно в коде(на Delphi) путь до файла будет выглядеть так:
    TPath.Combine(TPath.GetSharedDocumentsPath, 'settings.ini'); в случае если вы используете папку отличную от стандартных, т.е. создали папку вручную на карте памяти, то и полный путь до неё придётся прописывать вручную
  23. Пост Andrey Efimov - сообщение в Обновление списка ListBox, как в приложении ВКонтакте был отмечен как ответ   
    На форуме уже есть решение для iOS: Как сделать эффект обновления TListBox, как в UIListView под iOS?
  24. Пост Andrey Efimov - сообщение в Как определить путь к корню SD-Card на Android? был отмечен как ответ   
    Пока могу только посоветовать статью "Получаем список доступных устройств хранения информации".
    Важно:
    Третий метод будет работать на всех версиях Android до 4.3. С версии 4.3 произошли значительные изменения в организации файлов. К сожалению, у меня нет устройства с Android 4.3 чтобы провести анализ и написать код для версий выше 4.3.
     
    И второе, приложения, написанные в Делфи, по какой-то причине, не могут прочитать файл mounts. Я предполагаю, что если бы файл можно было прочитать, то код для версий выше 4.3 основывался на чтении этого файла.
     
    UPD (25.11.14). Для Android 4.4.* описано тут: Android 4.4 и запись на внешнюю карту памяти...
  25. Пост Andrey Efimov - сообщение в Проблема с отображением изображения подгруженного в run-time был отмечен как ответ   
    Почитайте эти темы, в них  вы найдёте ответы на многие вопросы, связанные с картинками, включая ваш:
    Получаем разрешение экрана устройства, логические и физические размеры экрана в FireMonkey Как использовать иконки разного качества для экранов с разным DPI?
×
×
  • Создать...