ImmersionBar 是一个用于 Android 系统的沉浸式状态栏和导航栏定制库。要实现沉浸式效果,请按照以下步骤操作:
在项目的 build.gradle 文件中添加 ImmersionBar 的依赖:
dependencies {
implementation 'com.gyf.immersionbar:immersionbar:3.0.2'
}
首先,创建一个自定义的 Application 类(如果尚未创建),并在其中初始化 ImmersionBar。例如:
import android.app.Application;
import com.gyf.immersionbar.ImmersionBar;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// 初始化沉浸式状态栏和导航栏
ImmersionBar.with(this)
.statusBarDarkFont(true, true) // 设置状态栏字体颜色为深色
.navigationBarDarkFont(true, true) // 设置导航栏字体颜色为深色
.init();
}
}
在 AndroidManifest.xml 文件中,将自定义的 Application 类指定为应用程序的入口点:
<application
android:name=".MyApplication"
...>
...
</application>
在需要实现沉浸式的 Activity 的布局文件中,将根布局的 android:fitsSystemWindows
属性设置为 true
:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
...>
...
</LinearLayout>
完成以上步骤后,应用程序的状态栏和导航栏将变为沉浸式样式。如果需要进一步自定义,可以查阅 ImmersionBar 的官方文档(https://github.com/gyf-dev/ImmersionBar)。