Android 隐藏StatusBar

在Activity中隐藏StatusBar:

     之需要在Activity中添加一个主题

          android:theme="@android:style/Theme.NoTitleBar.Fullscreen"


如果想一个应用中的所有的Activity中都隐藏StatusBar,需要在application中添加一个相应的主题:

android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

Android 16 系统中,隐藏状态栏可以通过代码在 Activity 里实现。以下是示例代码: ```java import android.os.Build; import android.os.Bundle; import android.view.Window; import android.view.WindowInsets; import android.view.WindowManager; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) { Window window = getWindow(); window.getInsetsController().hide(WindowInsets.Type.statusBars()); } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { Window window = getWindow(); window.setDecorFitsSystemWindows(false); window.getInsetsController().hide(WindowInsets.Type.statusBars()); } else { @SuppressWarnings("deprecation") Window window = getWindow(); window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); } } } ``` 上述代码中,针对不同的 Android 版本,采用了不同的隐藏状态栏的方法。在 Android 14(Upside Down Cake,对应 `Build.VERSION_CODES.UPSIDE_DOWN_CAKE`)及以上版本,使用 `WindowInsetsController` 的 `hide` 方法隐藏状态栏;在 Android 11(R,对应 `Build.VERSION_CODES.R`)到 Android 13 版本,先设置窗口不适应系统窗口,再使用 `WindowInsetsController` 隐藏状态栏;在 Android 11 以下版本,使用 `WindowManager.LayoutParams.FLAG_FULLSCREEN` 标志来隐藏状态栏。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值