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

zairkz

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

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

  • Посещение

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

    12

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

  1. Like
    zairkz отреагировална kami в vkbdhelper - поднятие компонентов над клавиатурой   
    Вам нужны координаты клавиатуры (пересчитанные из Screen в Client)  и AbsoluteRect поля ввода.
    if vkbdRect.IntersectsWith(EditAbsoluteRect) then   // пересекаются. Однако, следует обратить внимание на оба issue в комментариях - сообщенный приложению размер клавиатуры не всегда соответствует действительности.
  2. Like
    zairkz отреагировална kami в vkbdhelper - поднятие компонентов над клавиатурой   
    Коллеги, прошу при возможности протестировать очередную модификацию модуля.
    К сожалению, Santya видимо покинул форум надолго, так что отработать решение проблемы и возможные недостатки на "первом подопытном" не удалось.
     
    Основные изменения: очень многое переписал. По большому счету от исходного модуля осталась идея и два фундаментальных момента.
     
    Как обычно, спасибо Rusland за тестирование.    Осталось проверить, как ведет себя модуль с ScrollBox-ами, которые не растянуты на всю форму.
     
    vkbdhelper.zip
  3. Like
    zairkz отреагировална master webs в RAD 11 на подходе?   
    в теме начали сравнивать Visual Studio, Lazarus
    месяц назад купил prof версию и не желею есть подписка на год , если человек  занимается разработками отбить затраты не сотавит труда хотите  бесплатно качайте Android Studio и x-code
  4. Like
    zairkz отреагировална krapotkin в Перестает работать выделение ListView   
    наконец все отвыкнут хранить данные на экране ))
    если нужно что-то сохранять, используйте переменные и структуры данных
    по ним восстанавливайте состояние формы
  5. Like
    zairkz отреагировална master webs в Перестает работать выделение ListView   
    кстати у меня приложение на фреймах главная форма всегда пустая и фреймы подгружаю динамически нет никаких проблем и загрузка приложения намного быстрее 
  6. Like
    zairkz отреагировална Rusland в GPS   
    Попробовал сравнивать последнюю координату и 10ую. При стоянке выдает скорость от 0.2 до 0.7км/ч, ну хоть как-то можно использовать для определения топтания на месте.
     
    function TAndroidServiceDM.GetSpeed(Lat,Lon: double; Dat:integer; LC: TList<TCoords>):double; var Speed: double; SecBetween: integer; DstBetween: real; begin Speed:=-1; if LC.Count>=10 then begin SecBetween:=Dat-LC[9].Dat; DstBetween:=GetDistance(Lat,Lon,LC[9].Lat,LC[9].Lon); if (SecBetween<>0) then Speed:=3.6*DstBetween/SecBetween; end; Result:=Speed; end; Проверил в движении, скорость получается с запазданием и долго показывает скорость когда объект уже остановился, что собственно логично, но по крайней мере скорость почти идентична той что выдает программа Статус GPS. 
  7. Like
    zairkz отреагировална Rusland в GPS   
    Написал функцию которая считает среднюю скорость по трем последним координатам... так скорость скачает от 0 до 120км/ч. 
    Координаты выбрасываются непредсказуемо в любое время, чем меньше время между координатами, тем больше v = s / t (разброс дистанции 10-25метров). И это при том что объект стоит на месте. 
    Допустим между двумя координатами прошла 1 секунда, а расстояние 20м. Значит скорость v=20м/сек=72км/ч 
    Ну и как на это можно ориентироваться?
  8. Like
    zairkz отреагировална Rusland в Получение GPS координат из сервиса   
    PS. Первое решение оказалось рабочим... не знаю почему у меня вчера отказывалось нормально работать   Пользуйтесь.
     
    PPS. Надеюсь Embarcadero исправит этот баг в следующей версии и не придется делать столько телодвижений )
     
    Странно что после закрытия программы сервис перестает слать координаты - значок GPS пропадает. Хотя в Настройки->Приложения->Работающие я вижу как процесс перезапускается.
  9. Like
    zairkz отреагировална Rusland в GPS   
    Собственно то что написал и есть пример. Но собственно нужно еще протестировать как будет работать при движении (я пока тестил когда объект неподвижен).
    GetDistance я брал вроде у ZuBy:
    function TFormMain.GetDistance(const aStart, aEnd: TMapCoordinate): Double; const // определение расстояния между двумя точками Radius = 6372795; // примерный радиус земли PiDiv180=Pi/180; var CosLatStart, SinLatStart, CosLatEnd, SinLatEnd, Delta, CosDelta, SinDelta, X, Y: Double; begin try CosLatStart := Cos(aStart.Latitude * PiDiv180); CosLatEnd := Cos(aEnd.Latitude * PiDiv180); SinLatStart := Sin(aStart.Latitude * PiDiv180); SinLatEnd := Sin(aEnd.Latitude * PiDiv180); Delta := (aEnd.Longitude * PiDiv180) - (aStart.Longitude * PiDiv180); CosDelta := Cos(Delta); SinDelta := Sin(Delta); Y := Sqrt(((CosLatEnd*SinDelta)*(CosLatEnd*SinDelta))+ ((CosLatStart*SinLatEnd-SinLatStart*CosLatEnd*CosDelta) *(CosLatStart*SinLatEnd-SinLatStart*CosLatEnd*CosDelta))); X := SinLatStart * SinLatEnd + CosLatStart * CosLatEnd * CosDelta; Result := Round(ArcTan2(Y, X) * Radius); except Result := -1; end; end;  
    Alexander, Решение рабочее. 
     
  10. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в Custom Font   
    Шаблон проекта с кастомным шрифтом FontAwesome
    Намного удобней и менее затратно использовать Шрифт с Иконками, чем заботиться о качестве картинок, скейлах, их хранении и загрузке
    Поэтому давно перешел на шрифты, пару скриншотов (без использования картинок)

    Seattle CustomFont.7z
    Berlin CustomFont(Berlin).zip
     
    WINDOWS/MACOS - установить шрифт в систему
    IOS - в деплой добавить шрифт и с помощью IOS9Fix прописать в .plist следующее:
    ANDROID - в деплой добавить шрифт (Remote Path -> assets\internal) и подключить к проекту измененные файлы FMX.FontGlyphs.Android.pas, FMX.FontGlyphs.pas
  11. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в StatusBar Color   
    Шаблон для проектов с покраской статус бара для мобильных платформ
       
    UPDATE: StatusBarColor.7z
    UPDATE2: StatusBarColor_update.zip
     
  12. Like
    zairkz отреагировална ivadimos в StatusBar Color   
    ой красавчик, как раз вчера загонялся с этим.
    Спасибо, попробую)
  13. Like
    zairkz отреагировална Alex Bozhko в RAD 11 на подходе?   
    На моей памяти впервые была скидка живыми деньгами. Я о последней акции - минус 30% для индивидуальных разработчиков. Скажу так, народ реально заинтересовался. Надеюсь это был пробный шар, и подобные акции будут и дальше.
  14. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в Вопрос по компонентам   
    возможно так и есть, но я никогда ими не пользовался и не собираюсь, там есть какой-то тупой компонент с процентами. бред полный...
    у меня это все в хелпере для TPResentedScrollBox, удобно да и под контролем
  15. Like
    zairkz отреагировална krapotkin в Вопрос по компонентам   
    upd. не. вру.
    из-за необходимости  выравнивать разномерные  компоненты там запутанный многопроходный процесс.
    происходит медленнее
    ручные расчеты рулят
  16. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в Вопрос по компонентам   
    Вот так делал для себя
    PresentedButtonsRecalPosition.7z
  17. Like
    zairkz отреагировална Brovin Yaroslav в Ошибка "Bitmap size too big"   
    Нет. Это значит, что не нужно загружать 4 Мб фотографию в TImage с целью отобразить ее в итоге в размере 400х200. Нет, просто присваивайте в Bitmap TBtmapSurface. Bitmap.Assign(BitmapSurface) Методы по загрузки из файлов и потоков есть. Смотрите TBitmapCodecManager
  18. Like
    zairkz отреагировална Brovin Yaroslav в Хакнули регистрацию?   
    Скорее всего это все вручную делают. Единственное средство - это Модерация первого сообщения. Чтобы первый пост всегда модерировался. Если все ок, то тогда с пользователя снимается премодерация. Посмотрим за ситуацией недельку и примем решение.
    Мы уже включали ее, когда год назад было активное наползновение спамеров.
  19. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в Вызвать настройки GPS в Android   
    интентом вызывается, вот так
    procedure TForm4.GPSSettings; {$IFDEF ANDROID} var Intent: JIntent; {$ENDIF} begin {$IFDEF ANDROID} Intent := TJIntent.Create; Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_LOCATION_SOURCE_SETTINGS); TAndroidHelper.Activity.startActivity(Intent); {$ENDIF} end;  
  20. Like
    zairkz отреагировална mrseagull в RAD 11 на подходе?   
    Microsoft сильный игрок, Visual Studio тоже не в почете свое время была. Из-за размаха своего Microsoft может делать свои продукты бесплатными, с одной стороны и уходя в минус с этим продуктов (в  смысле денег), а с другой стороны захватить рынок. ИМХО конечно, но мне кажется для IDERA будет хорошим шагом сделать часть минимальную бесплатную для разработок, иначе Microsoft опять обыграем этот продукт. ИМХО.
  21. Like
    zairkz отреагировална Равиль Зарипов (ZuBy) в RAD 11 на подходе?   
    Остаетесь надеяться что IDERA не подведет и в течении года хотя бы могли компилировать "Hello World". Может Делфи оживит эту платформу, главное действовать быстро, пока ниша пуста
  22. Like
    zairkz отреагировална RoschinSpb в Добавить слой сразу ко многим изображениям   
    Спасибо за добрые слова, редко когда их можно услышать 
    Если хотите что-нибудь новенького, то сформулируйте это для начала хотя бы на родном языке так, чтобы окружающие могли понять. После этого записываем предложение на языке Шекспира и Welcome to https://quality.embarcadero.com
    В данном случае это не отписка, а вполне реальное объяснение корпоративных правил. Для выполнения любых работ нужно формальное обоснование и одобрение насяльника. Пожелание, или отчет об ошибке от пользователя это довольно веская причина для того, чтобы работы были запланированы. 
  23. Like
    zairkz получил реакцию от Kitty в OnButtonClick vs OnItemClick   
    procedure TForm1.ListView1ItemClickEx(const Sender: TObject; ItemIndex: integer; const [Ref] LocalClickPos: TPointF; const ItemObject: TListItemDrawable);
    begin
      if ItemObject is TListItemTextButton then
      begin
       //Bla Bla Bla вообщем сюда перенесите OnButtonClick .
      end;
    //Next Bla Bla Bla
    end;
  24. Like
    zairkz получил реакцию от Равиль Зарипов (ZuBy) в OnButtonClick vs OnItemClick   
    procedure TForm1.ListView1ItemClickEx(const Sender: TObject; ItemIndex: integer; const [Ref] LocalClickPos: TPointF; const ItemObject: TListItemDrawable);
    begin
      if ItemObject is TListItemTextButton then
      begin
       //Bla Bla Bla вообщем сюда перенесите OnButtonClick .
      end;
    //Next Bla Bla Bla
    end;
  25. Like
    zairkz получил реакцию от Равиль Зарипов (ZuBy) в Android Qml   
    WTF? Можно поподробнее?) но кажется вы форумом ошиблись
×
×
  • Создать...