我关于灯光状态栏标志的实现有什么问题?

时间:2019-04-22 03:09:32

标签: android delphi firemonkey

我正在寻找浅(白色)状态栏背景上较暗状态栏前景的解决方案。我正在使用Delphi 10.3(Rio)和Android版本8.1.0设备。我的代码应该基于我看过的Android示例工作。

我尝试了一些与状态栏有关的Android参考。以下是我的代码无效。我不知道缺少什么。 setStatusBarColor正在工作,setSystemUiVisibility无法工作。

procedure TfrmMain.FormCreate(Sender: TObject);
var
  lbl: TLabel;
  uiOptions: Integer;
begin
  CallInUIThread(
    procedure
    begin
      SharedActivity.getWindow.clearFlags(TJWindowManager_LayoutParams.JavaClass.FLAG_TRANSLUCENT_STATUS);
      SharedActivity.getWindow.addFlags(TJWindowManager_LayoutParams.JavaClass.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
      SharedActivity.getWindow.setFlags(TJWindowManager_LayoutParams.JavaClass.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS,
              TJWindowManager_LayoutParams.JavaClass.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
      uiOptions := SharedActivity.getWindow.getDecorView.getSystemUiVisibility();
      SharedActivity.getWindow.getDecorView.setSystemUiVisibility(TJview.JavaClass.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
      SharedActivity.getWindow.setStatusBarColor(TJcolor.JavaClass.BLACK);
    end);
end;

0 个答案:

没有答案