Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как изменить цвет фона и шрифта статус-бара в приложении Delphi XE8 FireMonkey для iOS

Delphi , Компоненты и Классы , TStatusBar

В статье мы рассмотрим, как изменить цвет фона и шрифта статус-бара в приложении Delphi XE8 FireMonkey для iOS. Статус-бар – это верхняя панель, отображающая время и значки Wi-Fi и т.д.

Подтвержденный ответ

Цвет фона статус-бара определяется свойством Fill.Color формы. Средняя яркость этого цвета определяет цвет шрифта (белый или черный). Свойство BorderStyle формы должно быть установлено в значение, отличное от None, иначе статус-бар будет скрыт.

Если в проекте несколько форм, непонятно, какая форма используется, но, похоже, используется последняя форма, автоматически созданная в файле проекта.

В коде FMX.Platform.iOS.pas есть функция TPlatformCocoaTouch.UpdateStatusBarColor, которая обновляет цвет статус-бара в зависимости от цвета фона формы:

procedure TPlatformCocoaTouch.UpdateStatusBarColor(const AForm: TCommonCustomForm);
begin
  ...
  AppDelegate.MainWindow.RootViewController.SetStatusBarBackgroundColor((AForm as TCustomForm).Fill.Color);
  ...
end

Функция TFMXViewController.SetStatusBarBackgroundColor устанавливает цвет фона статус-бара:

procedure TFMXViewController.SetStatusBarBackgroundColor(const ABackgroundColor: TAlphaColor);
begin
  ...
  FStatusBarLuminance := Luminance(ABackgroundColor);
  ...
end

Функция TFMXViewController.preferredStatusBarStyle определяет стиль статус-бара в зависимости от средней яркости цвета фона:

function TFMXViewController.preferredStatusBarStyle: UIStatusBarStyle;
begin
  if FStatusBarLuminance < 0.5 then
    Result := UIStatusBarStyleLightContent
  else
    Result := UIStatusBarStyleDefault;
end;

Альтернативный ответ

В книге "Разработка кроссплатформенных приложений с использованием Delphi XE7 и FireMonkey для Windows и MAC OS X" автор Хarry Stahl рекомендует использовать TGrid в качестве статус-бара, добавив в него нужные столбцы и элементы управления.

Заключение

Изменение цвета фона и шрифта статус-бара в приложении Delphi XE8 FireMonkey для iOS можно осуществить, изменив свойство Fill.Color формы и учитывая среднюю яркость цвета фона для определения цвета шрифта. Также можно использовать альтернативный подход с использованием TGrid в качестве статус-бара.

Создано по материалам из источника по ссылке.

В статье описывается процесс изменения цвета фона и шрифта статус-бара в приложении Delphi XE8 FireMonkey для iOS.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: TStatusBar ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 11:41:14/0.0036311149597168/0