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 的最佳效果。根據項目需求,可以靈活調整各種參數以獲得理想的沉浸式體驗。