在Activity中设置Fragment状态栏
ImmersionBarActivity
class ImmersionBarActivity : BaseNoModelActivity<ActivityImmersionbarBinding>() {
private val tabList = mutableListOf<String>()
private val fragmentList = arrayListOf<Fragment>()
override fun onCreate(): Int {
return R.layout.activity_immersionbar
}
override fun initData() {
super.initData()
tabList.add("蓝底白字")
tabList.add("白底黑字")
tabList.add("重合白字")
}
override fun initView() {
initViewPager()
}
private fun initViewPager() {
fragmentList.clear()
for (index in tabList.indices) {
fragmentList.add(BlueWhiteFragment())
fragmentList.add(WhiteBlankFragment())
fragmentList.add(TransparentFragment())
}
binding.vpImmersionbar.initFragment(this, fragmentList)
initNavigtor(tabList, binding.vpImmersionbar, binding.tabImmersionbar, mode = true)
//viewpager的监听事件
binding.vpImmersionbar.apply {
registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
override fun onPageSelected(position: Int) {
when (position) {
0 -> {
ImmersionBar.with(this@ImmersionBarActivity).statusBarDarkFont(false).statusBarColor(R.color.theme_color).init()
}
1 -> {
ImmersionBar.with(this