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

gonzales

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

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

  • Посещение

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

    19

gonzales стал победителем дня 1 июля

gonzales имел наиболее популярный контент!

Посетители профиля

8 609 просмотров профиля
  1. Прошу помощи, как переделать предложенный вариант под следующую конструкцию Я использую компоненты https://github.com/Zeus64/alcinoe TALTabControl на котором в каждой вкладке создается TALVertScrollBox, то есть у пользователя есть две степени свободы. Изначально я пробовал использовать обычный TVertScrollBox, который положен на TALTabControl, но приведенный код работал только при скролинге скроллбокса, а при горизонтальном свайпе со сменой активного таба нажатие все равно получалось. Вторая проблема в том, что я не до конца понимаю код, а конкретнее, когда я заменяю TCustomScrollBox на TALVertScrollBox, начинает ругаться на строку if ScrollBox is TCustomListBox then unit Form.Base; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.InertialMovement, FMX.Dialogs, FMX.Layouts, FMX.ListBox; type TBaseForm = class(TForm) private protected ControlledScrollBox: TCustomScrollBox; function GetActiveScrollBox: TCustomScrollBox; virtual; public function ObjectAtPoint(AScreenPoint: TPointF): IControl; override; end; implementation {$R *.fmx} type TAniCalculationsAccess = class(TAniCalculations); function ControlMoved(ScrollBox: TCustomScrollBox): Boolean; begin Result:=False; if Assigned(ScrollBox) then if ScrollBox is TCustomListBox then Result:=ScrollBox.AniCalculations.Moved else Result:=ScrollBox.AniCalculations.Moved and TAniCalculationsAccess(ScrollBox.AniCalculations).Enabled and (ScrollBox.AniCalculations.LastTimeCalc>0); end; function TBaseForm.GetActiveScrollBox: TCustomScrollBox; begin Result:=ControlledScrollBox; end; function TBaseForm.ObjectAtPoint(AScreenPoint: TPointF): IControl; var ScrollBox: TCustomScrollBox; begin var P:=ScreenToClient(AScreenPoint); ScrollBox:=GetActiveScrollBox; if ControlMoved(ScrollBox) and ScrollBox.PointInObject(P.X,P.Y) then begin Result:=ScrollBox; if Assigned(Captured) and (Captured<>Result) then begin Captured.MouseUp(TMouseButton.mbLeft,[],-1,-1); SetCaptured(nil); end; end else Result:=inherited; end; end. Прошу, пните в нужном направлении, куда копать
  2. Оставлю здесь небольшую ремарку по поводу того, как проверить aab файл на устройстве. Актуально для 10.4.1 Запускаем командную строку (я запускал от имени админа) команда создания сета с apk java.exe -jar "C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\Android\bundletool-all-0.13.3.jar" build-apks --mode=universal --bundle="путь до aab файла.aab" --output="путь куда развернуть apks файлы.apks" --ks="путь до keystore файла.keystore" --ks-pass=pass:пароль keystore --ks-key-alias=алиас приложения --key-pass=pass:пароль алиаса После непродолжительного ожидания в папке "путь куда развернуть apks файлы" создается apks файл команда установки java.exe -jar "C:\Program Files (x86)\Embarcadero\Studio\21.0\bin\Android\bundletool-all-0.13.3.jar" install-apks --apks="путь до apks файла.apks" --adb="C:\Users\Public\Documents\Embarcadero\Studio\21.0\CatalogRepository\AndroidSDK-2525-21.0.38860.1461\platform-tools\adb.exe" программа разворачивается на устройстве.
  3. Спасибо, в правильную сторону пнули. Не прописаны пути были для 32 битной версии.
  4. Подскажите пожалуйста такой момент, у меня есть сторонний компонент. Если я убираю галку "Generate Android App Bundle file (arm + arm64)" то все компилится нормально, но как только ставлю ее получаю ошибку, unit AVPlayer not found. Я где-то должен что-то еще прописать? Или это компонент не предназначен для создания бангла?
  5. Ну вот и приехали(( https://4pda.to/2021/06/30/387350/proschaj_apk_google_perekhodit_na_novyj_format_android_prilozhenij/ Генерация Android App Bundle появилась только в 10.4.2, но работает криво. У меня не подтянулись доп. библиотеки, криво работает TListboxItem, возможно еще есть какие-то косяки. Но тем не менее советую уже сейчас посматривать в сторону перехода на новую версию
  6. У меня исчезает при запуске приложения. А вообще, если Вы пользовались примером Равиля для отправки пуша, то в нем функция, в ней параметр badge отвечает за цифру function pushSend($title, $text, $tokens, $server_key) { $url = 'https://fcm.googleapis.com/fcm/send'; $headers = array('Authorization: key=' . $server_key, 'Content-Type: application/json'); if (is_array($tokens)) $fields['registration_ids'] = $tokens; else $fields['registration_ids'] = array($tokens); $fields['priority'] = 'high'; $badge = 1; $fields['notification'] = array('body' => $text, 'title' => $title, 'sound' => 'default', 'badge' => $badge); $fields['data'] = array('message' => $text, 'title' => $title); $jsonfields = json_encode($fields); print_r($jsonfields); $ch = curl_init(); curl_setopt_array($ch, array( CURLOPT_URL => $url, CURLOPT_POST => true, CURLOPT_HTTPHEADER => $headers, CURLOPT_RETURNTRANSFER => true, CURLOPT_SSL_VERIFYHOST => 0, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_POSTFIELDS => json_encode($fields) )); $result = curl_exec($ch); curl_close($ch); if ($result === false) return false; $json = json_decode($result, true); if ($json['success'] == 0) return false; else return true; }
  7. Вы имеете ввиду FGX? А там - это где? Потому что в разделе этого сайта все также, как тут?
  8. К сожалению форум умирает. Не знаю, связывать ли это с стремлением программеров мигрировать на другие языки и фреймворки, но последнее время специально заходил на форум и смотрел кол-во пользователей. Зрелище не впечатляющее((( Из тех, кто реально может помочь с трудной задачкой осталось пара человек. Может есть другие форумы, где более оживленное общение идет, не знаю...
  9. Прошу прощения за ламерский вопрос, а что такое LogCat и где такое смотреть?
  10. krapotkin, Вам не доводилось в 10.4.2 компилить приложение под Андроид? У меня возникла проблема с 10 Адроидом, описал в этой ветке
  11. А мне надо к item пристегнуть checkbox и объект. При старом items.add - это не работало, поэтому и был такой механизм создания TListBoxItem со всеми нужными параметрами и запихивание его в listbox комбика. В любом случае спасибо, буду дальше рыть
  12. нашел, когда проявляется бага. Попробуйте нажать b1, потом раскрыть комбобокс, увидите значения 1 и 2, затем нажмите b2 и посмотрите что будет в комбобоксе. Ожидаем увидеть 1,2,3,4 ...;)
  13. Проверили именно в 10.4.2?
×
×
  • Создать...