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

ENERGY

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

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

  • Посещение

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

    57

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

  1. Like
    ENERGY получил реакцию от Tumaso в В Embarcadero отсутствует Android Service   
    Совет. Не пишите под Android на Delphi ниже последней версии Берлина (10.1 upd 2).
    А если выше, то точно не Токио первых версий, только последние версии Токио, иначе все будет тормозить и глючить.
  2. Like
    ENERGY получил реакцию от Anatoliy в В Embarcadero отсутствует Android Service   
    Совет. Не пишите под Android на Delphi ниже последней версии Берлина (10.1 upd 2).
    А если выше, то точно не Токио первых версий, только последние версии Токио, иначе все будет тормозить и глючить.
  3. Like
    ENERGY получил реакцию от Anatoliy в [Apple store]отказ публикации из-за локации   
    Значит на уровне закона, нельзя распотранять марихуану, также как алкоголь, видимо для этого требуется документ о возрасте итп.
    Это уже юридический вопрос, а не программисткий. Спроси на форуме юристов США, попробуй включи только США, а Канаду выключи. Не во всем США разрешена марихуана.
  4. Like
    ENERGY получил реакцию от Anatoliy в [DELPHI FMX Android] [6.0] Не удается загрузить SSL библиотеку   
    Лучший вариант отказаться от Indy и использовать родную библиотеку из модуля System.Net.HttpClient и THTTPClient. Она и более стабильная на всех 4 ОС и SSL работает прозрачно.
    Что означает "передать почту"?
     
  5. Like
    ENERGY получил реакцию от Anatoliy в Библиотека Alcinoe для iOS/FMX   
    На основном форуме EMBT и на стэке он под ником loki loki. Можно напрямую с ним пообщаться. Фреймворк очень шустрый, правда нужна последняя версия Delphi. 
  6. Like
    ENERGY получил реакцию от Maximus в [Apple store]отказ публикации из-за локации   
    Ну и что они сказали конкретно? Не во всех штатах США марихуана легализована, может из за этого.
    Проблему нужно решать с поддержкой Apple, и вам персонально проблему с гомосексуализмом, а не здесь. 
  7. Like
    ENERGY получил реакцию от Mars M в Получить размер файла   
    function FileSize(const aFilePath: string): Int64; var   vSR : TSearchRec; begin   if FindFirst(aFilePath, faAnyFile, vSR ) = 0 then   begin     Result := vSR.Size;     FindClose(vSR);   end   else      Result := -1; end; Мультиплатформенный вариант без открытия файла (размер берется из файловой системы).
  8. Like
    ENERGY получил реакцию от ГоРыНыЧ в Разрешение/запрет гасить экран   
    Вот вариант, его можно применять в любом месте (обычно в OnCreateForm), не обязательно в DPR. 
    Флаг можно добавлять и удалять.     
    Для обычного запрета выключать экран нужен только лишь флаг FLAG_KEEP_SCREEN_ON, остальные не нужны.
     
    Для Tokyo и возможно поздних версий, CallInUIThread не нужен.
    {$IFDEF ANDROID}   procedure TurnOnAndKeepScreenAndroid(aEnable: boolean);   var     vFlags: integer;   begin     vFlags := TJWindowManager_LayoutParams.JavaClass.FLAG_TURN_SCREEN_ON or         TJWindowManager_LayoutParams.JavaClass.FLAG_DISMISS_KEYGUARD or         TJWindowManager_LayoutParams.JavaClass.FLAG_SHOW_WHEN_LOCKED or         TJWindowManager_LayoutParams.JavaClass.FLAG_KEEP_SCREEN_ON;     if aEnable then     begin       CallInUIThread (   // uses FMX.Helpers.Android       procedure       begin         TAndroidHelper.Activity.getWindow.setFlags (vFlags, vFlags);       end );     end     else       CallInUIThread (       procedure       begin         TAndroidHelper.Activity.getWindow.clearFlags (vFlags);       end );   end;   {$ENDIF}
     
  9. Like
    ENERGY отреагировална Barbanel в Элементы стиля на Андроид   
    Возможно это не работает потому, что для Андроида у вас нет стиля, либо он называется не так, либо в данном стиле нет нет элемента с именем 'BackgroundColor'.
    Проверьте стили и убедитесь что структура имен совпадает.
  10. Like
    ENERGY отреагировална Barbanel в Элементы стиля на Андроид   
    Я так и думал.
    то что он один - не означает что он для всех платформ.
    ЕМНИП, дефолтный стиль предназначен для Виндовс.
    Давайте в этом точно разберемся.
    Сохраните стиль в файл, при сохранении выберите расширение файла .style
    Откройте этот файл текстовым редактором.
    Найдите в нем блок "object TStyleDescription"
    Покажите что стоит в поле "PlatformTarget" и "MobilePlatform".
    Или покажите весь блок.
  11. Like
    ENERGY получил реакцию от Anatoliy в TWebBrowser. Убрать горизонтальный скрол, убрать вертикальный скрол   
    Скорее всего не получиться сделать скриншот, т.к. это нативный компонент и MakeScreenshot тут вернет белый фон. 
    Чтобы убрать горизонтальную прокрутку, наверное нужно копать в сторону CSS, и искать как адаптировать страницу под ширину сайта без скрола..
    В том то и дело что его не достанешь так просто, т.к. скрол бар в нативном компоненте.
  12. Like
    ENERGY получил реакцию от Anatoliy в переходпо ссылке с push уведомления   
    Никак, даже в нативном swift, при тапе на уведомление, сначала запускается\активируется программа, а затем уже оттуда нужно вызвать ссылку и закрыть\скрыть программу.
    Вы же для iOS пишите? 
  13. Like
    ENERGY получил реакцию от Anatoliy в Освобождение памяти TListViewItem   
    У меня как раз так - на каждый введеный символ TEdit, я делаю Clear и заполняю снова с другими результатами. И деструктор вызывается каждый раз. Возможно в Берлине до обновлений было по другому..
     
  14. Like
    ENERGY получил реакцию от Barbanel в Рабочее место для IOS разработки   
    Имхо тогда уже лучше купить обычный ноут под Win с Intel и на нем запустить виртуалку. Это более универсальное решение. Мне решение с виртуальной машиной больше нравится, т.к в VMWare удобно создавать образы всей системы. Особенно это актуально перед обновление системы или Xcode. Не работает после обновления? Пару кликов и ты вернулся к рабочей версии.
    Ну или MacMini, тоже бюджетное решение.
  15. Like
    ENERGY получил реакцию от Tumaso в Рабочее место для IOS разработки   
    Имхо тогда уже лучше купить обычный ноут под Win с Intel и на нем запустить виртуалку. Это более универсальное решение. Мне решение с виртуальной машиной больше нравится, т.к в VMWare удобно создавать образы всей системы. Особенно это актуально перед обновление системы или Xcode. Не работает после обновления? Пару кликов и ты вернулся к рабочей версии.
    Ну или MacMini, тоже бюджетное решение.
  16. Like
    ENERGY получил реакцию от Anatoliy в Открыть для чтения pdf файл. Android   
    {$IFDEF ANDROID} Uses Androidapi.JNI.GraphicsContentViewText, Androidapi.Helpers, Androidapi.JNI.JavaTypes, Androidapi.JNI.Net; {$ENDIF} procedure btnPdfClick(Sender: TObject); var lName : String; {$IFDEF ANDROID} Intent : JIntent; URI : Jnet_Uri; {$ENDIF} begin lName := TPath.GetSharedDownloadsPath + PathDelim + 'test.pdf'; {$IFDEF ANDROID} URI := TJnet_Uri.JavaClass.parse(StringToJString('file:///' + lName)); intent := TJIntent.Create; intent.setAction(TJIntent.JavaClass.ACTION_VIEW); intent.setDataAndType(URI,StringToJString('application/pdf')); SharedActivity.startActivity(intent); {$ENDIF} end;  
  17. Like
    ENERGY получил реакцию от Anatoliy в Освобождение памяти TListViewItem   
    Это неверно. Все TListViewItem корректно уничтожаются и освобождаются в Clear.
    Чтобы это проверить, достаточно поставить точку останова на TListItem.Destroy;
    А предложенный вами код это очень не оптимизированное и медленное решение, с перерассчетом всех индексов при каждом удалении айтема.
  18. Like
    ENERGY получил реакцию от Anatoliy в Рабочее место для IOS разработки   
    Необходимый минимум -
    iPhone или iPad. iPhone нужен от 5s и выше. 5 уже не пойдет, т.к. 32 битный. 
    100$  - купить сертификат разработчика у Apple.
    MacOS можно запускать на виртуальной машине, готовые образы Vmware, с установленой системой, есть на рутрекере. Для работы нужен реальный процесор Intel, с AMD не пойдет.
    Настройка всего этого может занять пару дней, а то и больше.  
  19. Like
    ENERGY получил реакцию от Hangar-18 в Плавающая кнопка   
    Правильно. Фреймворк будет смотреть на значение в Scale - если оно будет около системного значения, то загрузит нужную картинку. Иногда, чтобы убедиться что картинка загружается, я раскрашиваю их в разные цвета.
    Offtop: 
    Иногда я беру картинку с разрешением scale 3 и оставляю только одну картинку указывая Scale 1 (т.е. на деле у нее разрешение scale 3).  TImage или TGlyph сделает авторесайз под размер компонента, но не всегда качественный авторесайз получается, нужно смотреть на результаты. Вообще (не только в Delphi), растровую картинку можно уменьшить почти без потери качества, а вот если ее увеличить - то тогда будет плохое качество - появятся растровые квадраты и картинка не будет выглядеть сглаженной. Поэтому не увеличивайте картинки малых разрешение, до более высокого. 
  20. Like
    ENERGY получил реакцию от Hangar-18 в Плавающая кнопка   
    В этом варианте при нажатии будет появляться сервый прямоугольник. Не идет. Вариант Равиля медленный, кнопка будет часто перерисовыватся, круг + картинка + тень. 
    Поэтому лучший вариант это сделать кнопку в виде обычной картинки. TImage или TGlyph. Я делал на TGlyph чтобы все картинки были в ImageList. 
    Подготовьте 3 пнг картинки с полностью готовой кнопкой, с тремя масштабами.
    Scale 1 = 56x56 Scale 2 = 112x112 Scale 3 = 168x168 Поместите его в TImageList (обычно в глобальном Datamodule), добавьте свое изображение в список и добавьте 3 коэффициента масштабирования в исходное изображение (дважды щелкните элемент в списке «Sources of Image» в ImageList,  там выберите "Add new Item"), в итоге одно изображение в TImageList будет иметь 3 scale. Чтобы понять какой scale загрузился при тесте, можно поставить для теста картинки разного цвета. Поместите TGlyph на форму и выберите свой список изображений.
    Установите событие OnClick в Form OnCreate (поскольку Glyph1 не имеет OnClick по умолчанию в Object Inspector):
    Glyph1.OnClick := Click; Glyph1.HitTest := true; В OnClick добавьте этот код для анимации:
    procedure TForm2.TestClick(Sender: TObject); begin TAnimator.AnimateFloatWait(Glyph1, 'Opacity', 0.5, 0.2); TAnimator.AnimateFloat(Glyph1, 'Opacity', 1, 0.2); end; Или вы можете использовать TImage - это еще проще и меньше кода, чем выше.
     
     
  21. Like
    ENERGY получил реакцию от Barbanel в Кнопка Done   
    У формы есть событие OnVirtualKeyboardHidden, оно срабатывает когда юзер нажимает Done и клавиатура скрывается.
    Также, срабатывает событие OnExit компонента (напр TEdit).
  22. Like
    ENERGY получил реакцию от Anatoliy в OnVirtualKeyboardShown   
    У формы есть свойство Focused. 
    MyControl := TControl(Focused.GetObject);
  23. Like
    ENERGY получил реакцию от Anatoliy в Кнопка Done   
    У формы есть событие OnVirtualKeyboardHidden, оно срабатывает когда юзер нажимает Done и клавиатура скрывается.
    Также, срабатывает событие OnExit компонента (напр TEdit).
  24. Like
    ENERGY отреагировална Alex7wrt в Android. Форма не на весь экран по вертикали.   
    Для того, чтобы работало "из коробки", добавьте в файле манифеста в секции Activity строку:
       <meta-data android:name="android.max_aspect" android:value="2.1" />
    Где 2.1 -максимальное соотношение сторон, поддерживаемое приложением. Можно заменить другим числом
  25. Like
    ENERGY получил реакцию от Anatoliy в XCode версия   
    Может кому то пригодится.
    Победить Linker Error 1 просто. И iOS SDK 11 и больше прекрасно компилиться и работает на Берлине.
    В логах ошибки пишет что ld: file not found: /System/Library/Frameworks/FileProvider.framework/FileProvider for architecture arm64
    Значит нужно добавить его в SDK 
    Tools -> Options -> SDK Manager - выбираем свой SDK и добавляем по аналогии с уже имеюищимися путями:  Add: 
    $(SDKROOT)/System/Library/Frameworks
    FrameworkName: FileProvider
     
    Далее ОК и обновляем кэш (Update Local File Cache). Сделайте Clean проекту на всякий случай, и та дам, все компилиться под Берлином и запускается на айфоне с IOS 11+ 64bit.
     
    Upd - но лучше поставить поставить последнюю версию Delphi, т.к. я заметил баг с системным тулбаром он не перекрашивается,  в зависимости от цвета текущей формы..
×
×
  • Создать...