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

Alex7wrt

Пользователи
  • Постов

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

  • Посещение

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

    31

Активность репутации

  1. Like
    Alex7wrt отреагировална AngryOwl в Как записать видео на Андроиде?   
    Вообще, конечно, собрать видео из отдельных кадров можно. Вполне реально. Но не для всего)
    И это все "свистоперделки"...
    Что касается частоты кадров - реально получать 10-15. Еще и от устройства зависит, от камеры и т.д. Но все эти тормоза из-за класса "обертки" работы с видео. Именно он выдает так мало кадров. Сама камера работает. FMX работает тоже ничего, но основные тормоза из-за того что в TCameraComponent уже "приходит" мало кадров.
    На самом деле, как я считаю, разработка для мобильных платформ должна в первую очередь решать именно мультимедийные функции (я бы сказал, что это ОЧЕНЬ важно). А мы имеем пока-что их жалкое подобие, которое нужно допиливать ручками...
    Я уже не говорю о том, что почему-то если в той же iOS что-то "запрещено", то это же касается и Android, хотя в ней все намного проще и она более "открыта". Глупо как-то, уж простите за откровенность...
  2. Like
    Alex7wrt получил реакцию от Rusland в Что быстрее, эмулятор или телефон?   
    Соглашусь, что скорость компиляции во многом обусловлена именно дисковой подсистемой. Поэтому эмулятор не может быть быстрее - разница с устройством только в том, что в одном случае после компиляции приложение копируется и устанавливается на устройство, а в другом запускается на эмуляторе. Но скопировать приложение на устройство - это дело от силы нескольких секунд. При этом сам эмулятор при медленном диске тоже будет долго запускаться и сильно ограничивать доступную оперативную память на компьютере, чем вызывать замедление работы той же студии. 4 ГБ в этом случае совсем не много.
    А вообще использование эмулятора имеет больший смысл, так как позволяет оценить работоспособность приложения на разных версиях ОС, различном количестве памяти и разрешений экрана. Но удобным это будет при наличии быстрого SSD, хорошего процессора и большого объема  ОЗУ.
  3. Like
    Alex7wrt отреагировална GASCHE в Почему пляшет TImage?   
    Или вместо
            CharacterImage.Position.X := 500 - size / 2 - size mod 3;         CharacterImage.Position.Y := ScreenHeight - size; как-то так
             CharacterImage.Position.X :=  ( ScreenWidth - size )/2;          CharacterImage.Position.Y := ( screenHeight - size )/2; и установите
       CharacterImage.WrapMode  := TImageWrapMode.Stretch;  
  4. Like
    Alex7wrt получил реакцию от sulion в Почему пляшет TImage?   
    Используйте свойство TImage.Wrapmode и настраивайте размеры. Можно поместить TImage в контейнер и указать свойство Align:=TAlignLayout.Center
  5. Like
    Alex7wrt получил реакцию от Kitty в Почему пляшет TImage?   
    Используйте свойство TImage.Wrapmode и настраивайте размеры. Можно поместить TImage в контейнер и указать свойство Align:=TAlignLayout.Center
  6. Like
    Alex7wrt отреагировална Brovin Yaroslav в Как поменять фон Edit?   
    Добрый день,
     
    Можно использовать прозрачный стиль эдита 'TransparentEditStyle'. В таком стиле эдит отображает только текст. В таком случае, Вы можете подложить под TEdit любую подложку. Или же сделать новый стиль на базе стиля по умолчанию.
  7. Like
    Alex7wrt отреагировална rustam_d в Что быстрее, эмулятор или телефон?   
    Эмулятор да тормозит, жесть против ИОС эмулятора.
    Лучше Андроид устройство какое нить по юсб или вафле (последнее сложнее в реализации).
    Компиляция я бы сказал - невыносимая, даже по юсб.
    Сделайте следующее:
    - установите делфи и проекты ваши на SSD диск скажем 250гб (у меня самс ево 500 и операционка на нем)
    - поставьте процессор core i7
     
    после всего этого у вас компиляция будет всего на 95% отставать от VCL, против текущих 550%.
  8. Like
    Alex7wrt получил реакцию от Kitty в ini файл в телефоне   
    На телефоне открылся прямым щелчком. Программой ES проводник. Android 4.0.3
  9. Like
    Alex7wrt отреагировална Axbor в Получение координат при нажатии и движении мышки   
    Извиняюсь, не посмотрел форум! нужно было всего лишь Screen->MousePos() использовать!
  10. Like
    Alex7wrt отреагировална FIL в Как получить Child компоненты   
    Image1.Children.Items[i]
  11. Like
    Alex7wrt отреагировална Brovin Yaroslav в Работа с текстом   
    Просто прочитайте:
    Как работать с TStringHelper и TStringBuilder в C++Builder ХЕ6
  12. Like
    Alex7wrt отреагировална Kitty в RAD XE9 (RAD X Seattle)   
    3. Coming Soon to RAD Studio ... iOS 64-bit Universal App Debugging
    http://community.embarcadero.com/blogs/entry/coming-soon-to-rad-studio-ios-64-bit-universal-app-debugging
     
    4. See What's Coming in RAD Studio, Delphi and C++Builder Wednesday, September 2, 2015
    http://forms.embarcadero.com/RADFirstLookWebinar-2015-09-02
  13. Like
    Alex7wrt отреагировална Kitty в RAD XE9 (RAD X Seattle)   
    Собираем в интернете, что нас ждет в RAD XE9. 
    1. Увеличение стабильности в два раза:
    http://community.embarcadero.com/write-blog-post/entry/coming-soon-to-rad-studio-twice-the-ide-memory-brings-a-new-level-of-productivity-performance-and-stability
    2. Создание служб в Андроиде:
    http://community.embarcadero.com/blogs/entry/coming-soon-to-delphi-execute-background-tasks-with-android-services
     
    Может еще кто найдет что-то интересное.
  14. Like
    Alex7wrt отреагировална Axbor в Как сохранить пропорцию?   
    Bitmap->Width, Bitmap->Height, оригинальные размеры загруженного изображения. Размер компоненты изменяю так:
        double koefW = 200.0/(double)Bitmap->Width;     double koefH = 200.0/(double)Bitmap->Height;     double koefC = (koefW < koefH?koefW:koefH); Image->Width = Bitmap->Width * koefC; Image->Height = Bitmap->Height * koefC;
  15. Like
    Alex7wrt отреагировална Равиль Зарипов (ZuBy) в Ресурсы и оперативная память   
    2. Deployment при каждом запуске распаковывается на устройство и можно работать как с обычными файлами,
        Ресурсами вы сами занимаетесь, когда они вам нужны вы их вытаскиваете
  16. Like
    Alex7wrt отреагировална Равиль Зарипов (ZuBy) в TMapsEngine   
    Компонент TMapsEngine
     
    Возможности
    Нативный LocationSensor [ANDROID] Геокодинг/Реверс геокодинг через Google API, Yandex API, Here Maps API Построение маршрута через Google Distance API Расчет дистанции по прямой Совместим со стандартным компонентом TLocationSensor  
    Видео демонстрация
     
    На видео видно как TMapView косячик с миллионом точек, приложение зависло при отрисовке, но с этим ничего не поделать.
    Без синхронизации не возможно отрисовать все точки
     
    Исходник
    TMapsEngine_source.zip
    TMapsEngine_Seattle_10.zip
     
    Скачать APK  (долго он там не пролежит, а форум не позволяет загрузить zip размером 7,4 мб )
     
  17. Like
    Alex7wrt получил реакцию от Равиль Зарипов (ZuBy) в Как определить выбранный на устройстве язык?   
    Для Android:
    uses FMX.Platform; ......... var ls: IFMXLocaleService; lang: string; begin if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID; В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.
     
    либо просто: 
    lang:=copy(SysLocale.DefaultLCID,1,2); В этом случае нужен модуль System.SysUtils. 
    Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для  стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка. 
  18. Like
    Alex7wrt получил реакцию от Vitaldj в Как определить выбранный на устройстве язык?   
    Для Android:
    uses FMX.Platform; ......... var ls: IFMXLocaleService; lang: string; begin if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID; В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.
     
    либо просто: 
    lang:=copy(SysLocale.DefaultLCID,1,2); В этом случае нужен модуль System.SysUtils. 
    Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для  стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка. 
  19. Like
    Alex7wrt получил реакцию от Kitty в Как определить выбранный на устройстве язык?   
    Для Android:
    uses FMX.Platform; ......... var ls: IFMXLocaleService; lang: string; begin if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID; В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.
     
    либо просто: 
    lang:=copy(SysLocale.DefaultLCID,1,2); В этом случае нужен модуль System.SysUtils. 
    Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для  стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка. 
  20. Like
    Alex7wrt отреагировална AngryOwl в Недостающий вариант Image WrapMode   
    Особо править нет времени, разберетесь. Все просто - это компонент, унаследованный от стандартного TImage, с теми свойствами, которые Вам нужны.
    unit Sphere.ImageEx; interface uses   System.Classes, System.Types, FMX.Types, FMX.Objects, FMX.Graphics;   type     TBitmapFit = (bfDefault, bfWidth, bfHeight, bfBoth);     TImageEx = class(TImage)     private       FBitmapDisplayRect: TRectF;       procedure SetBitmapFit(const Value: TBitmapFit);     protected       FBitmapFit: TBitmapFit;       procedure Paint; override;     public       constructor Create(AOwner: TComponent); override;       function ImagePointToBitmap(const APoint: TPointF): TPointF;       property BitmapDisplayRect: TRectF read FBitmapDisplayRect;     published       property BitmapFit: TBitmapFit read FBitmapFit write SetBitmapFit;     end; implementation { TImageEx } constructor TImageEx.Create(AOwner: TComponent); begin   inherited;   FBitmapFit := bfDefault;   FBitmapDisplayRect := TRectF.Empty; end; function TImageEx.ImagePointToBitmap(const APoint: TPointF): TPointF; begin   Result := APoint;   if not (BitmapDisplayRect.IsEmpty) and Assigned(Bitmap) then   begin     Result.X := Result.X - Trunc(BitmapDisplayRect.Left);     if Bitmap.Width > BitmapDisplayRect.Width then       Result.X := Result.X / (BitmapDisplayRect.Width / Bitmap.Width );     Result.Y := Result.Y - Trunc(BitmapDisplayRect.Top);     if Bitmap.Height > BitmapDisplayRect.Height then       Result.Y := Result.Y / (BitmapDisplayRect.Height / Bitmap.Height );   end; end; procedure TImageEx.Paint; begin {весь код - в прикрепленном файлике}   // всегда центрируем для этих методов отрисовки   else if FBitmapFit <> bfDefault then   begin     // растягиваем по ширине с обрезкой верхнего/нижнего краев     Canvas.BeginScene();     try       Coef := B.Width / B.Height;       R := RectF(0, 0, B.Width, B.Height);       if FBitmapFit = bfWidth then         R := RectF(0, 0, Width, Width / Coef)         else         if FBitmapFit = bfHeight then           R := RectF(0, 0, Height * Coef, Height)           else           if FBitmapFit = bfBoth then           begin             if Coef >= 1 then               R := RectF(0, 0, Height * Coef, Height)               else               R := RectF(0, 0, Width, Width / Coef);           end;       RectCenter(R, LocalRect);       Canvas.DrawBitmap(B, RectF(0, 0, B.Width, B.Height), R, AbsoluteOpacity, DisableInterpolation);       FBitmapDisplayRect := R;     finally       Canvas.EndScene();     end;   end; end; procedure TImageEx.SetBitmapFit(const Value: TBitmapFit); begin   if FBitmapFit <> Value then   begin     FBitmapFit := Value;     Paint();   end; end; //initialization //  RegisterFMXClasses([TImageEx]); end. Sphere.ImageEx.zip
  21. Like
    Alex7wrt получил реакцию от Brovin Yaroslav в [TImage] Как сделать увеличение\уменьшение TImage при помощи двух пальцев?   
    Здесь можно почитать про обработку мультитача в Delphi XE7
  22. Like
    Alex7wrt отреагировална Равиль Зарипов (ZuBy) в При выравниваниее по правому краю съедаются символы.   
    как одно из решении, добавить пробелы с права от текста. если float то перевести в string
  23. Like
    Alex7wrt отреагировална Brovin Yaroslav в Как закрасить имеющийся рисунок?   
    Можно сделать маску, содержащую ту часть футболки, которую нужно закрашивать. А далее по маске попиксельно менять цвет.
  24. Like
    Alex7wrt отреагировална Brovin Yaroslav в Как закрасить имеющийся рисунок?   
    Еще подумал, что можно сделать png картинку с футболкой, у которой прозрачной будет только закрашиваемая часть. А дальше просто подложить под картинку TRectangle и просто менять ему цвет.
  25. Like
    Alex7wrt получил реакцию от Brovin Yaroslav в узнать расстояние между 2 точками   
    Если нужно решать поточнее, тогда надо представлять Землю как двухосный эллипсоид. Тогда это задача на нахождение длины дуги на поверхности эллипсоида. Решается методами вариационного исчисления. http://vasnake.blogspot.com/2006/12/blog-post_15.html
×
×
  • Создать...