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

Лидеры

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

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

    Модераторы


    • Баллы

      6

    • Постов

      2 517


  2. Brovin Yaroslav

    Brovin Yaroslav

    Администраторы


    • Баллы

      4

    • Постов

      2 124


  3. krapotkin

    krapotkin

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


    • Баллы

      3

    • Постов

      2 185


  4. Martifan

    Martifan

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


    • Баллы

      2

    • Постов

      396


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

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

  1. Brovin Yaroslav

    Слайдер для двух TImage

    Пока в FGX есть слайдер, но он без использования жеста прокручивания. Я подумаю, чтобы добавить в следующую версию прокрутку пальцем.
    3 балла
  2. uses maskUtils Edit1.Text := MaskDoFormatText('000.000.000.000;#0',Edit1.Text, #0);
    2 балла
  3. я к Вашему слайдеру повесил жесты (Left,Right) и нормально так получилось. пришлось вынести пару методов в public, ​писал вроде об этом уже
    2 балла
  4. List:TObjectList<TMapMarker>; ... List:=TObjectList<TMapMarker>.Create(true); ... FreeAndNil(List);
    2 балла
  5. Martifan

    Удаление маркеров TMapView N2

    Private FMarkers: TList<TMapMarker>; ................... Procedure AddMarker; var mapCenter: TMapCoordinate; MyMarker: TMapMarkerDescriptor; Begin mapCenter := TMapCoordinate.Create(StrToFloat(Lat), StrToFloat(Lon)); MyMarker := TMapMarkerDescriptor.Create(mapCenter, 'Text'); fmain.MapView1.Location := mapCenter; FMarkers.Add(fmain.MapView1.AddMarker(MyMarker)); End; Procedure RemoveMarker; var Marker: TMapMarker; Begin for Marker in FMarkers do Marker.Remove; FMarkers.Clear; End; procedure Tfmain.FormCreate(Sender: TObject); begin FMarkers := TList<TMapMarker>.Create; End;
    2 балла
  6. Решено Zuby и Cody71727172 , может кому пригодиться: Вообщем кнопочка MyLocation на MapView цепляет данные c LOCATION_SERVICE (Androidapi.JNI.Location) и если отсутствует GPS датчик в телефоне, тогда: Прописываем функцию: function CheckGPSActive: Boolean; // uses Androidapi.JNIBridge, Androidapi.JNI.Location, Androidapi.JNI.JavaTypes, Androidapi.JNI.GraphicsContentViewText, Androidapi.Helpers {$IFDEF ANDROID} var LocManagerObj: JObject; LocationManager: JLocationManager; allProviders: JList; I: Integer; begin Result := false; LocManagerObj := SharedActivityContext.getSystemService (TJContext.JavaClass.LOCATION_SERVICE); // запрашиваем сервис Location if Assigned(LocManagerObj) then begin LocationManager := TJLocationManager.Wrap((LocManagerObj as ILocalObject).GetObjectID); // получаем LocationManager if Assigned(LocationManager) then begin allProviders := LocationManager.getProviders(true); // запрашиваем список всех провайдеров if Assigned(allProviders) then with TStringList.Create do begin for I := 0 to allProviders.size - 1 do Add(JStringToString(allProviders.get(I).ToString)); if ((IndexOf('gps') >= 0) or (IndexOf('network') >= 0) or (IndexOf('passive') >= 0)) then Result := true; Free; end; end; end; {$ELSE} begin Result := false; {$ENDIF} end; и при запуске LocationSensor например на Form.Create проверяем procedure TForm_main.FormCreate(Sender: TObject); begin {$IFDEF ANDROID} LocationSensor.Active:=true; if not LocationSensor.Active then if not CheckGPSActive then ShowMessage('Включите GPS для определения Вашего местоположения!') else LocationSensor.Active := true; {$ENDIF} end; LocationSensor сам подключит источник данных, поэтому изменять в LSensor1LocationChanged ничего не нужно, например: procedure TForm_Main.LSensor1LocationChanged(Sender: TObject; const [Ref] OldLocation, NewLocation: TLocationCoord2D); //uses Maps.Engine var MapsEngine: TMapsEngine; MapsLoc: TMapCoordinate; MapsData: TMapsEngineGeoData; begin MapsLoc := TMapCoordinate.Create(NewLocation.Latitude, NewLocation.Longitude); MapsEngine.SetOptionsYandex(''); MapsEngine.Geocoding(NewLocation, MapsData); Edit1.text:= MapsData.FormattedAddress; end;
    2 балла
  7. создать нужно изначально Marker.Descriptor.Icon := TBitmap.Create;
    1 балл
  8. TObjectList при Free сам делает чистку своих объектов
    1 балл
  9. Rusland

    Регулярные выражения

    Проверил. Нормально работает
    1 балл
  10. krapotkin

    Долгое заполенение TreeView

    не нужно даже предполагать возможность скачивания 10000 элементов в экран размером 12 см даже для десктопа это плохая архитектура, а для мобилы - 100% непригодная нужно сразу думать о другом интерфейсе зайди в вк. промотай 200 записей из новостей, все и так еле шевелится...
    1 балл
  11. Так, я посмотрел. Сохраняем себе такую процедуру: procedure PreloadContent(const Control: TControl); var I: Integer; begin if Control is TStyledControl then TStyledControl(Control).ApplyStyleLookup; for I := 0 to Control.ControlsCount - 1 do PreloadContent(Control.Controls[I]); end; Она форсирует загрузку стилей. Задержка при появлении TMutliView заключается в том, что стиль загружается не сразу у любого контрола, а только по мере появления контрола. Обычно это происходит при первой отрисовки. Это правило касается всех контролов. Поэтому, в этом случае, вам нужно форсировать загрузку стилей. Это можно сделать при помощи моей процедуру PreloadContent. Добавьте в TForm.OnCreate и это решит задержку при первом появлении: PreloadContent(MultiView1);
    1 балл
  12. Ну тут все просто. Remote Push Notification. Вот, хороший видос на эту тему для ведра тынц И сервис никакой не нужен. Для ведра это называется "Google Cloud Messaging"
    1 балл
  13. Коротко объясню.... ACloseDialogProc - это процедура-обработчик результатов, полученных при помощи MessageDlg, поскольку в этой версии RAD XE7 все диалоги являются не блокирующими, т.е. во время показа диалога, продолжается выполнение следующих строк кода. Вам необходимо объявить новую процедуру, которая будет вызываться после нажатия любых кнопок в MessageDlg. Т.е. будет что-то вроде procedure TForm1.doSomethingWithDialogResult(const AResult: TModalResult); begin if AResult=mrYes then begin {тут обработка нажатия кнопки Yes} end; end; а вызвать диалог необходимо следующим образом MessageDlg('Тут текст сообщения', TMsgDlgType.mtConfirmation, mbYesNo, 0, doSomethingWithDialogResult);
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...