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

Brovin Yaroslav

Администраторы
  • Постов

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

  • Посещение

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

    390

Весь контент Brovin Yaroslav

  1. Добрый вечер, Для вашего нового контрола: Или Укажите явно используемый стиль: AEdit.StyleLookup := 'editstyle'; Или переопределите название стиля по умолчанию: type TMyEdit = class(TEdit) protected function GetDefaultStyleLookupName: string; override; end; { TMyEdit } function TMyEdit.GetDefaultStyleLookupName: string; begin Result := 'editstyle'; end;
  2. Просьба для новых вопросов, создавать отдельную тему, а не устраивать помойку из одной тем. Спасибо. Тема на этом закрыта.
  3. Добрый вечер, Это специфика данного устройства. Поэтому, я думаю, что лучше задать этот вопрос в "Центре поддержки пользователей" компании Fly: https://flymobile.zendesk.com/home Спросите их, где взять ADB драйвер для вашей модели телефона. Update: Вот есть какая-то зацепка: "Включение режима USB-отладки (USB Debugging)"
  4. На сколько я могу судить по API MX проигрывателя, я вижу, что он умеет: Проигрывать заранее составленный список файлов. Уведомлять о завершении просмотра файла: Значит, Вы можете из своего приложения узнать точно, когда файл будет полностью проигран и запустить на проигрывание новый файл. Проиграть заранее подготовленный ваш список файлов. В этом случае не нужно будет вообще мудрить. Как получить результат запроса на длительность файла Общий принцип работы интентов (намерений) в андроиде следующий: Вы формируете свой запрос на любое действие, согласно апи. Отправляете свой запрос в операционную систему Получаете результат выполнения интента через onActivityResult Чтобы получить в Delphi ответ на ваш запрос, нужно прочитать эту тему: "Как в вызываемом приложении получить результат, объект JIntent?"
  5. Нужно создать нативный проигрыватель JMediaPlayer медиа-файлов, Указать ему URI к файлу и спросить требуемые параметры: uses Androidapi.JNI.Media, AndroidApi.Helpers, FMX.Helpers.Android, FMX.Platform.Android; function ExtractFileDuration(const AURIOfFile: string): Integer; var MediaPlayer: JMediaPlayer; begin MediaPlayer := TJMediaPlayer.JavaClass.create(MainActivity, StrToJURI(AURIOfFile)); if MediaPlayer <> nil then try Result := MediaPlayer.getDuration; // MSecs finally MediaPlayer.release; end else Result := 0; end; Если проигрыватель не создан, это значит, то указан не правильный путь к файлу. Обратите внимание, что в качестве параметра нужно передавать URI на файл
  6. Добрый вечер, Начиная с XE9 TTabControl теперь умеет прокручивать вкладки. Добавлены дополнительные кнопки прокрутки. На мобильных платформах вкладки пролистываются пальцем. Для ранних версий Аналога компонента только кладок из VCL в FireMonkey увы нету. TTabControl из FireMonkey не умеет отображать свои закладки в несколько рядов. Так что единственными решениями пока являются: Использовать свойство TTabControl.FullSize. Заранее выбирать ширину TabControl, чтобы все вкладки поместились (понимаю, что не всегда этого можно добиться) Создать наследника от TTabControl и переопределить свой вариант расположения вкладок (метод TTabControl.RealignTabs).
  7. Ошибка запуска на iPhone Согласно тексту ошибки: [PAClient Error] Error: E0264 Unable to execute '"/usr/bin/codesign" --en "/Users/anton/PAServer/scratch-dir/IvanovAA-123/Server.app/Entitlements.plist" --deep -s "iPhone Developer" -f "/Users/anton/PAServer/scratch-dir/IvanovAA-123/Server.app"' (Error 1) [PAClient Error] Error: E0264 iPhone Developer: no identity found Проблема в том, что у вас на маке утилита подписи вашего приложения не может найти сертификат с указанным именем или алиасом. В вашем случае вы используете название "iPhone Developer". Действия Необходимо убедиться, что на маке в "Связке ключей" у вас есть такой сертификат. Для этого: Открываем программу на маке "Связка ключей" (Она обычно расположена в папке утилиты). Просматриваем названия ключей. Например в моем случае: Ищите ваш сертификат разработчика, и убеждаетесь, что в начале названия стоит "iPhone Developer" до двоеточия. Если нет, то нужно в IDE RAD Studio полностью указать название вашего сертификата, как в указано на маке. Если у вас несколько сертификатов, как у меня. То в этом случае нужно обязательно в IDE указывать название сертификата полностью. Иначе в противном случае, утилита не сможет понять, каким сертификатом подписывать ваше приложение. Если у вас один сертификат, то можно использовать алиас сертификата (Часть полного названия названия сертификата до двоеточия)
  8. Добрый день, Я бы создавал отдельно TImage и несколько (если нужно) TText или TLabel. Порядок этих контролов устанавливал на основании вида исходных данных: "текст-картинка-текст" или "картинка-текст" и тд.
  9. Добрый день, Это ошибка, ее устранили в будущей новой версии среды. Для обхода проблемы в других версиях среды, нужно использовать следующий подход: var StyledPresentation: TStyledControl; begin StyledPresentation := nil; if Edit1.HasPresentationProxy then StyledPresentation := Edit1.PresentationProxy.Receiver as TStyledControl; if StyledPresentation <> nil then StyledPresentation.OnClick := Edit1Click; // <-- программно задать свой обработчик end; Код для С++ Builder: void __fastcall TForm2::FormCreate(TObject *Sender) { TStyledControl* styledPresentation; if (Edit1->HasPresentationProxy()) { styledPresentation = dynamic_cast<TStyledControl*>(Edit1->PresentationProxy->Receiver); styledPresentation->OnClick = Edit1Click; // <-- программно задать свой обработчик } }
  10. Как временное решение, можно использовать iOS SDK 7.1. Его нужно отдельно закачивать через настройки XCode. Но повторюсь, это временное решение.
  11. В таком случае нужно внимательно перечитать то, на что я дал вам ссылку и обратит внимание на слова: От себя добавлю, что такая функция появилась в самом Андроиде только начиная с 4.4. И никаким способом раньше нельзя было убирать системные кнопки.
  12. Какая у вас стоит версия Android на устройстве, на котором вы пытаетесь скрыть системные кнопки?
  13. Но речь в теме идет о системном статус баре: "[Android] Как скрыть/показать системный Status Bar?", а не о кнопках снизу. То что вас интересует описано на сайте docwiki: 1.7 Full-Screen Immersive Mode for Android
  14. Не за что. Перечитайте еще раз http://fire-monkey.ru/topic/777-tgrid-timagecolumn-ne-mogu-zagruzit-jpg-iz-resursov/?p=3234
  15. Ваш пример работает правильно. Я даже больше того скажу, что согласно вашим настройкам текст в ячейке действительно выводится жирным фиолетовым цветом: Вам стоит проверить первое условие в StringGrid1DrawColumnCell и убедиться, что условие не выполняется. А проще всего закомментировать его и проверить, что указанная вами ячейка отрисовывается.
  16. В том же файле находим TCustomGrid.DrawAlternatingBackground (предположительно 2138 стрчока) procedure TCustomGrid.DrawAlternatingBackground(const DrawingContent: TControl; const Canvas: TCanvas); var I: Integer; P: TPointF; begin if TGridOption.AlternatingRowBackground in FOptions then for I := 0 to VisibleRows - 1 do begin if Odd(TopRow + I) then begin P := Content.LocalToAbsolute(PointF(0, (TopRow + I) * FRowHeight)); P := DrawingContent.AbsoluteToLocal(P); Canvas.FillRect(RectF(P.X, P.Y, P.X + Content.Width, P.Y + FRowHeight), 0, 0, [], AbsoluteOpacity, FOddFill); end; end; Меняем 2150 строчку на: procedure TCustomGrid.DrawAlternatingBackground(const DrawingContent: TControl; const Canvas: TCanvas); var I: Integer; P: TPointF; begin if TGridOption.AlternatingRowBackground in FOptions then for I := 0 to VisibleRows - 1 do begin if Odd(TopRow + I) then begin P := Content.LocalToAbsolute(PointF(0, (TopRow + I) * FRowHeight)); P := DrawingContent.AbsoluteToLocal(P); Canvas.FillRect(RectF(P.X + ViewportPosition.X, P.Y, P.X + Content.Width + ViewportPosition.X, P.Y + FRowHeight), 0, 0, [], AbsoluteOpacity, FOddFill); // <-- добавляем смещение ViewportPosition end; end; end;
  17. О том, как запустить сервис: прописать ваш сервис в манифесте или запустить через функцию StartService На счет второго не могу вам пока ответить. Могу дать только направление. Почитайте, как осуществляется связь Java с любым другим языком через JNI. Отсюда вы поймете, как объявлять методы, реализованные на другом языке, чтобы их использовать на Java стороне (ключевое слова native и static). Потом посмотрите, как работает Delphi-Android Bridge, а именно файлы Androidapi.AppGlue.pas, там по идеи должны быть объявления методы для склейки делфи стороны с андроидовской (Обратите внимание на секцию exports)
  18. Я думаю, лучше задать этот вопрос представителям FastReport на их сайте (адрес указан в начале темы). Так же там среди всех особенностей, указано: Видимо все-таки должна быть эта функция. Так как она указана. Кстати, в таблице сравнений функциональности версии под Windows и OSX, тоже ваши форматы присутствуют
  19. Вы не правильно создаете столбец. Так как для столбца нужно обязательно указать родителя: vloTCol.Parent := Grid1; Без этого, ваш столбец не прикрепляется к гриду.
  20. Brovin Yaroslav

    iOS 8.1.1

    Попробуйте использовать iOS SDK 7.1. Его можно скачать в настройках XCode. Далее не забудьте сделать для него профиль в IDE Rad Studio. И при запуске не забудьте его сделать активным.
  21. Детальнее излагайте ваши мысли. Так как я на ваш скудный на детали вопрос, ответил больше, чем нужно. И я не понял, что вы не поняли из того, что я написал.
  22. Brovin Yaroslav

    iOS 8.1.1

    Проблема при запуске в симуляторе или на девайсе?
×
×
  • Создать...