ImmersionBar 是一个强大的 Android 工具栏,用于定制状态栏、导航栏和沉浸式体验。要设置最佳效果,请遵循以下步骤:
在项目的 build.gradle 文件中添加 ImmersionBar 的依赖项:
dependencies {
implementation 'com.gyf.immersionbar:immersionbar:3.3.0'
}
import com.gyf.immersionbar.ImmersionBar;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// 初始化 immersionBar
ImmersionBar.with(this)
.statusBarDarkFont(true, true) // 设置状态栏字体颜色为深色
.navigationBarDarkFont(true, true) // 设置导航栏字体颜色为深色
.init();
}
}
<application
android:name=".MyApplication"
...>
</application>
在需要沉浸式的 Activity 中,可以使用以下代码设置状态栏和导航栏的颜色:
import com.gyf.immersionbar.ImmersionBar;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 设置沉浸式状态栏和导航栏
ImmersionBar.with(this)
.statusBarColor(Color.parseColor("#3F51B5")) // 设置状态栏颜色
.navigationBarColor(Color.parseColor("#3F51B5")) // 设置导航栏颜色
.statusBarDarkFont(true, true) // 设置状态栏字体颜色为深色
.navigationBarDarkFont(true, true) // 设置导航栏字体颜色为深色
.init();
}
}
如果需要自定义沉浸式效果,可以使用以下方法:
ImmersionBar.with(this)
.statusBarAlpha(0.5f) // 设置状态栏透明度,范围为 0-1
.init();
ImmersionBar.with(this)
.navigationBarAlpha(0.5f) // 设置导航栏透明度,范围为 0-1
.init();
ImmersionBar.with(this)
.statusBarColorGradual(Color.parseColor("#3F51B5"), 100) // 设置状态栏颜色渐变,startColor 为起始颜色,endColor 为终止颜色,duration 为过渡时间(毫秒)
.navigationBarColorGradual(Color.parseColor("#3F51B5"), 100) // 设置导航栏颜色渐变
.init();
ImmersionBar.with(this)
.statusBarBackground(Color.parseColor("#3F51B5")) // 设置状态栏背景颜色
.navigationBarBackground(Color.parseColor("#3F51B5")) // 设置导航栏背景颜色
.init();
通过以上步骤,您可以设置 ImmersionBar 的最佳效果。根据项目需求,可以灵活调整各种参数以获得理想的沉浸式体验。