From d5e9f1cff948c17a6b706d14a07b1a26f7450d5d Mon Sep 17 00:00:00 2001 From: jhengazuki Date: Thu, 18 Sep 2025 20:49:55 +0800 Subject: [PATCH] Fix NavigationBarColor --- .../fongmi/android/tv/ui/base/BaseActivity.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/base/BaseActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/base/BaseActivity.java index 9a5bd6b51..3c5294ae6 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/base/BaseActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/base/BaseActivity.java @@ -15,6 +15,7 @@ import android.window.OnBackInvokedDispatcher; import androidx.activity.OnBackPressedCallback; import androidx.appcompat.app.AppCompatActivity; +import androidx.core.view.WindowCompat; import androidx.viewbinding.ViewBinding; import com.fongmi.android.tv.ui.custom.CustomWallView; @@ -33,7 +34,7 @@ public abstract class BaseActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - if (transparent()) setTransparent(this); + if (transparent()) setTransparent(); setContentView(getBinding().getRoot()); EventBus.getDefault().register(this); initView(savedInstanceState); @@ -107,11 +108,12 @@ public abstract class BaseActivity extends AppCompatActivity { } } - private void setTransparent(Activity activity) { - activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); - activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); - activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); - activity.getWindow().setStatusBarColor(Color.TRANSPARENT); + private void setTransparent() { + getWindow().setStatusBarColor(Color.TRANSPARENT); + getWindow().setNavigationBarColor(Color.TRANSPARENT); + WindowCompat.setDecorFitsSystemWindows(getWindow(), false); + getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); + getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); } @Subscribe(threadMode = ThreadMode.MAIN)