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

zairkz

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

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

  • Посещение

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

    12

Весь контент zairkz

  1. Может кто знает варианты такого же решения для iOS ?
  2. Попробуйте свернуть приложение (only Droid) uses Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; procedure TForm_Main.AppMinimal; {$IFDEF ANDROID} var Intent: JIntent; {$ENDIF} begin {$IFDEF ANDROID} Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_MAIN); Intent.addCategory(TJIntent.JavaClass.CATEGORY_HOME); Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); TAndroidHelper.Activity.startActivity(Intent); {$ENDIF} end;
  3. zairkz

    Exception в System

    Честно не думаю что чем-то помогу, работаю только с INDY. Но я не совсем понял ответ №1, не могли бы вы скинуть кусочек кода того что в таймере, создание потока и сам вызов запроса. может что и увижу, как говорится одна голова хорошо, но две лучше.
  4. zairkz

    Exception в System

    Может элементарные вещи, но хочу уточнить пару моментов: 0. HTTPclient - это ведь INDY компонент, TidHTTP? 1. Запросы каждые 10 секунд, на время выполнения операции отключается ли таймер? 2. Отлавливаете ли exception в запросах HTTPClient? 3. Включен и работает ли TimeOut в запросе HTTPClient? 4. HTTPclient создается динамически для каждого запроса или статичный компонент? 5. Если сервер возвращает ошибку (правильную ошибку которую вы ожидаете) или же заканчивается TimeOut запроса какие действия? Таймер продолжает работать или остановка процесса? 6. При успешном выполнении операции вызывается Синхронизация или же визуальных действий не происходит?
  5. Лучше сделайте сразу правильно, все равно придете к этому, при загрузке фото на сервер переименовывайте файл, общепринятый вариант дать определенное стандартное имя, например наименование вашего проекта и время в формате unix, например: Name+1424238237362, далее от имени сгенерировать MD5 хэш, и записать его в базу, после чего вернуть в ответ имя нового файла если нужен. Таким образом даже если будут одинаковые файлы имена не повторятся, а вот Random без проверки точно повторится, да и проверять надо постоянно базу шерстить.
  6. Только что скачал этот файл у меня с размером облак все нормально.
  7. Извиняюсь что долго, перепроверьте процедуру, с размером облок вроде все нормально: procedure TForm2.ChatUp(UsID: integer; LastId: integer; CText: string); var Labb: TLabel; Marg: Single; LT: TLayout; begin LT := TLayout.Create(PR); LT.Parent := PR.Content; LT.Margins.Top := 2; LT.Align := TAlignLayout.Top; LT.Position.Y := PR.ContentBounds.Height + 50; Marg := PR.Width * 0.20; Labb := TLabel.Create(PR); Labb.Parent := PR; Labb.Align := TAlignLayout.Top; Labb.AutoSize := True; Labb.WordWrap := True; Labb.TextSettings.WordWrap := True; if UsID = 0 then begin Labb.Margins.Left := Marg; Labb.Margins.Right := 4; Labb.TextAlign := TTextAlign.Trailing; Labb.StyleLookup := 'labelchat_green'; end else begin Labb.Margins.Right := Marg; Labb.Margins.Left := 4; Labb.TextAlign := TTextAlign.Leading; Labb.StyleLookup := 'labelchat_white'; end; Labb.NeedStyleLookup; Labb.Text := ' ' + CText + ' '; LT.Height := Labb.Height + 4; Labb.Parent := LT; if UsID = 0 then Labb.Align := TAlignLayout.Right else Labb.Align := TAlignLayout.Left; end; По поводу очистке Опишите клас: TOpenScrollBox = class(TPresentedScrollBox); до TForm_Main = class(TForm) ... и процедурка procedure ClearChildren(AScrollBox: TPresentedScrollBox); begin Assert(AScrollBox <> nil); TOpenScrollBox(AScrollBox).Content.DeleteChildren; AScrollBox.Repaint; end;
  8. Ну во первых у вас не прогрузились стили, попробуйте использовать процедуру по предварительной прогрузке стилей в теме ниже, Во вторых можно попробовать DisableDisapear, с небольшим количеством компонентов вполне нормальное решение, тоже в теме ниже: В третьих например можно разместить скрытый TImage на вкладке TabItema, при этом разместить контролы в Лайауте и при анимации снять скриншот Лайаута, затем скрыть Лайаут и показать Timage. С TabControl я не пробовал, но с MultiView (Push - выталкивание меню в iOS) вполне пригодна
  9. Используйте свойство OnTap Для удобства разработки можно повторить команды OnTap в OnClick в директивах: Procedure ListBoxOnClicl;;; begin {$IFDEF MSWINDOWS} BlaBla {$ENDIF} end;
  10. Огого Dimsa на форуме!) Вчера из за вас зарегился на твитере первый раз в жизни, но так и не понял как в личку то написать!)) Очень хочу помочь в развитие Asteroids vs You, движок еще не ковырял но FPS поражает, могу ли я предложить сценарий геймплея, нарисовать персонажей, текстуры, спрайты и т.д. вообщем всё что связано с графикой. Если заняты сильно развитием движка, а на игрушку нет времени то наверно скоро достану вас вопросами)
  11. Кроме того, проверьте стандартную библиотеку System.JSON на утечку памяти (ReportMemoryLeak), каждый раз TJSONvalue надо освобождать и уничтожать.
  12. Это еще такой средненький ресторанчик)), это ж Астана.
  13. Я не знаю что там в недрах в ListView, но по скорости скролла данная реализация поспорит с многими нативными приложениями, авторы ListView молодцы, а реализация колонок Zuby как всегда на высоте!)) Тест (более 2000 элементов, с динамической подгрузкой картинок)
  14. zairkz

    Android Qml

    WTF? Можно поподробнее?) но кажется вы форумом ошиблись
  15. 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;
  16. Мы тоже подаём в "электрическом" виде, через розетку 220В
  17. Можно помучаться с TListView, но я остановился на TPresentedScrollBox и стилизованных Label'ах (облачки сообщений, под разные scale на png 9patch), скорость скролла хорошая, плюс есть боунсы и тд. Приложил исходники проекта, также в архиве отдельно chat.style procedure TForm2.ChatUp(UsID: integer; LastId: integer; CText: string); var Labb: TLabel; Marg: Single; LT: TLayout; begin LT := TLayout.Create(PR); LT.Parent := PR.Content; LT.Margins.Top := 2; LT.Align := TAlignLayout.Top; LT.Position.Y := PR.ContentBounds.Height + 50; Marg := PR.Width * 0.20; Labb := TLabel.Create(PR); Labb.Parent := PR; Labb.Align := TAlignLayout.Top; Labb.AutoSize := True; Labb.WordWrap := True; Labb.TextSettings.WordWrap := True; if UsID = 0 then begin Labb.Margins.Left := Marg; Labb.Margins.Right := 4; Labb.TextAlign := TTextAlign.Trailing; Labb.StyleLookup := 'labelchat_green'; end else begin Labb.Margins.Right := Marg; Labb.Margins.Left := 4; Labb.TextAlign := TTextAlign.Leading; Labb.StyleLookup := 'labelchat_white'; end; Labb.NeedStyleLookup; Labb.Text := ' ' + CText + ' '; LT.Height := Labb.Height + 4; Labb.Parent := LT; if UsID = 0 then Labb.Align := TAlignLayout.Right else Labb.Align := TAlignLayout.Left; end; Первые признаки шизофрении: Chat.zip
  18. Пожалуйста сделайте возможность нажимать нравиться больше чем 10 раз на день, уж очень мне многое нравиться, а лайкнуть не могу)), лимит 30 хотя бы.
  19. Да Вы правы, тогда нужен точный список не поддерживаемых устройств)
  20. А еще вроде как новые устройства на Intel Atom поддерживают эмуляцию, поэтому вам только старые устройства отключить на которых приложения вообще не запустятся. На эмуляторе Intela нормально все работает если правильно делать. А "работающие и пользующиеся популярностью приложения" наврятли оно таким станет, если у ~30% пользователей не будет возможность даже скачать (Допустим 30% скачало, из них 10% не запустилось). Кроме того все надеемся на новые версии студии в котором будет поддержка Intel
  21. А где в прайсе инфа об Add-on, или все таки ценовую политику пересмотрели? Professional теперь точно с исходниками?? И как точно понять? -> Optional for Development of Universal 32-bit/64-bit iOS apps and Android apps including Lollipop. http://www.embarcadero.com/ru/app-development-tools-store/delphi
  22. "не судите строго мы его забросили)", и да сейчас чуток по другому делаем, вариант скину обязательно.
×
×
  • Создать...