【发布时间】:2020-05-15 11:14:33
【问题描述】:
如何在 Delphi 10.3 Rio 项目的代码中检测暗模式?
我有一个设置为白色的背景矩形,iOS 无法将其变暗。垂直滚动窗格中的 TLabel 文本确实变成了白色,这使得它们在白色背景上不可读。
【问题讨论】:
标签: delphi-10.3-rio ios-darkmode
如何在 Delphi 10.3 Rio 项目的代码中检测暗模式?
我有一个设置为白色的背景矩形,iOS 无法将其变暗。垂直滚动窗格中的 TLabel 文本确实变成了白色,这使得它们在白色背景上不可读。
【问题讨论】:
标签: delphi-10.3-rio ios-darkmode
似乎没有办法在 Delphi iOS 应用程序中检测暗模式。
为了使它成为可能,我在 FMX.Platform.iOS.pas 的底部添加了这个函数
function MikesIsDarkModeOn: Boolean;
begin
Result := not (GetUserInterfaceStyle = UIUserInterfaceStyleLight);
end;
然后我添加了一个计时器,它每两秒检查一次暗模式的变化,并(在变化时)将我的自定义对话框和列表项的背景切换为白色或黑色。文本通常(但不总是)已经被 Delphi 适当地切换为暗模式的白色/黑色。
【讨论】: