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

Лидеры

  1. Равиль Зарипов (ZuBy)

    Равиль Зарипов (ZuBy)

    Модераторы


    • Баллы

      8

    • Постов

      2 517


  2. enatechno

    enatechno

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


    • Баллы

      3

    • Постов

      181


  3. krapotkin

    krapotkin

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


    • Баллы

      2

    • Постов

      2 179


  4. AlexShaman

    AlexShaman

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


    • Баллы

      1

    • Постов

      24


Популярный контент

Показан контент с высокой репутацией 17.02.2017 во всех областях

  1. Ссылка: http://blog.rzaripov.kz/2017/02/firebase-android-ios.html Автор: Зарипов Равиль @ZuBy Описание: Настройка пуш уведомлении через сервис Firebase для ANDROID и IOS
    5 баллов
  2. мы в чатике провели небольшое расследование. получилось что ресурсы на мобильных (на андроиде точно) сделаны для совместимости кода, т.к. даже если вы добавите в ресурсы файл, он все равно окажется в деплойменте и доступ будет и через TResourceStream и по пути. тест был такой 1) Новый проект 2) Project - Resources and Images 3) добавляем файл (camera_1x.png) 4) компилируем на андроид устройство 5) проверяем оба варианта procedure TForm1.Button1Click(Sender: TObject); var ResourceStream: TResourceStream; begin ResourceStream := TResourceStream.Create(hInstance, 'camera', RT_RCDATA); try ResourceStream.Position := 0; Image1.Bitmap.LoadFromStream(ResourceStream); finally FreeAndNil(ResourceStream); end; end; procedure TForm1.Button2Click(Sender: TObject); begin Image1.Bitmap.LoadFromFile(TPath.Combine (TPath.GetDocumentsPath, 'camera_1x.png')); end; в deployment'е наш файлик
    2 балла
  3. krapotkin

    TNetHTTPClient и JSON-RPC

    от души рекомендую заменить TJSONObject на XSuperObject https://github.com/onryldz/x-superobject код будет таким примерно uses XSuperObject; ... procedure TForm1.b1Click(Sender: TObject); var x:ISuperObject; arr:ISuperArray; str:string; begin X:=TSuperObject.Create(); X.S['jsonrpc'] := '2.0'; X.S['method'] := 'get_accounts'; X.I['id'] := 1; arr:=TSuperArray.Create(); arr.Add('captain'); X.A['params']:=arr; ... str:=X.AsJSON(); ... но для начала вам нужно убедиться, что для правильного запроса правильный ответ. ваша строка с образцом не совпадает только в id у вас это строка, а в приведенных примерах - число. может, в этом проблема h:=THTTPClient.Create(); // h.Accept := 'application/json' // h.AcceptCharSet := 'UTF-8'; src:=TStringStream.Create('{"jsonrpc":"2.0","method":"get_accounts","id":1,"params":["captain"]}'); res:=TStringStream.Create(); resp:=h.Post(URL,src,res); if resp.StatusCode=200 then begin ShowMessage('Ответ'+sLineBreak+res.DataString); end; FreeAndNil(h); FreeAndNil(res); FreeAndNil(src); так же может быть, нужно правильно указывать кодировку запроса-ответа и другие заголовки HTTP проверьте этот код. а потом уже делайте JSON любым способом
    2 балла
  4. Спасибо Равиль! По факту используется ListBox. В случае TCustomPopover и TCustomListPicker все равно придется (проще всего) его использовать. Самый простой варинат, как уже написал Равиль, TMultiView с режимом Popover. Как это сделать вручную без TMultiView пошагово: https://community.embarcadero.com/blogs/entry/creating-an-overflow-menu-on-android-463 На случай если статья пропадет: Также этот же вариант описан в бесплатной книге в главе Create an Overflow Menu
    1 балл
  5. enatechno

    Анимированные элементы

    buttonstyle.zip
    1 балл
  6. Анимацию и эффекты можно добавлять прямо в стиль, и события назначать тут же через триггеры.
    1 балл
  7. С помощью сервиса. Пример работы с таймером:
    1 балл
  8. В ОС есть специальные сервисы которые делают "подписку" вашего приложения на уведомления. Нам же из проекта нужно просто дать им понять, что мы хотим получать уведомления. Если запущено, то уведомление сразу поступает в приложение Если не запущено, то отображается в шторке
    1 балл
  9. Нашел готовое решение, переделал немного (Berlin). Используя это решение можно получать символы от вирт клавиатуры. Регистрация клавиатуры SetMyVirtualKeyboard(const AControl: TFmxObject), где AControl - компонент обрабатывающий события OnKeyUp procedure SetMyVirtualKeyboard(const AControl: TFmxObject); begin {$IFDEF ANDROID} if FNativeVKService <> nil then Exit; if not Assigned(FMyVirtualKeyboardAndroid) then begin FMyVirtualKeyboardAndroid := TVirtualKeyboardAndroidEx.Create; FMyVirtualKeyboardAndroid.OnKeyUp := TForm(AControl).OnKeyUp; end; FNativeVKService := IFMXVirtualKeyboardService(TPlatformServices.Current.GetPlatformService(IFMXVirtualKeyboardService)); if FNativeVKService <> nil then begin TPlatformServices.Current.RemovePlatformService(IFMXVirtualKeyboardService); end; TPlatformServices.Current.AddPlatformService(IFMXVirtualKeyboardService, FMyVirtualKeyboardAndroid); {$ENDIF} end; Вызов клавиатуры стандартно TPlatformServices.Current.SupportsPlatformService( IFMXVirtualKeyboardService, IInterface(aVirtualKeyboardService)); if (aVirtualKeyboardService <> nil) then aVirtualKeyboardService.ShowVirtualKeyboard(fMain); Скрытие, тоже стандартно if (key=13) then begin //если нажата клавиша enter if TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardService, IInterface(aVirtualKeyboardService)) then aVirtualKeyboardService.HideVirtualKeyboard; end; MyFMX.VirtualKeyboard.Android.rar
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...