This commit is contained in:
Horis
2024-08-26 22:49:50 +08:00
parent 384375d13f
commit b09f867984
3 changed files with 25 additions and 23 deletions
@@ -14,7 +14,6 @@ import android.view.WindowManager
import android.widget.FrameLayout
import androidx.activity.viewModels
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import io.legado.app.R
import io.legado.app.base.VMBaseActivity
import io.legado.app.constant.AppConst.charsets
@@ -51,8 +50,6 @@ import io.legado.app.utils.setNavigationBarColorAuto
import io.legado.app.utils.showDialogFragment
import io.legado.app.utils.viewbindingdelegate.viewBinding
import io.legado.app.utils.visible
import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.launch
import java.time.LocalDate
import java.time.format.DateTimeFormatter
@@ -216,7 +213,7 @@ abstract class BaseReadBookActivity :
}
override fun upNavigationBarColor() {
upNavigationBar()
// upNavigationBar()
when {
binding.readMenu.isVisible -> super.upNavigationBarColor()
bottomDialog > 0 -> super.upNavigationBarColor()
@@ -7,7 +7,6 @@ import android.graphics.Color
import android.graphics.PorterDuff
import android.graphics.drawable.GradientDrawable
import android.util.AttributeSet
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View.OnClickListener
import android.view.View.OnLongClickListener
@@ -16,6 +15,8 @@ import android.view.animation.Animation
import android.widget.FrameLayout
import android.widget.SeekBar
import androidx.appcompat.widget.PopupMenu
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.isGone
import androidx.core.view.isVisible
import io.legado.app.R
@@ -46,18 +47,13 @@ import io.legado.app.utils.gone
import io.legado.app.utils.invisible
import io.legado.app.utils.loadAnimation
import io.legado.app.utils.modifyBegin
import io.legado.app.utils.navigationBarGravity
import io.legado.app.utils.navigationBarHeight
import io.legado.app.utils.openUrl
import io.legado.app.utils.putPrefBoolean
import io.legado.app.utils.startActivity
import io.legado.app.utils.visible
import splitties.views.bottomPadding
import splitties.views.leftPadding
import splitties.views.onClick
import splitties.views.onLongClick
import splitties.views.padding
import splitties.views.rightPadding
/**
* 阅读界面菜单
@@ -132,20 +128,20 @@ class ReadMenu @JvmOverloads constructor(
@SuppressLint("RtlHardcoded")
override fun onAnimationEnd(animation: Animation) {
val navigationBarHeight =
if (ReadBookConfig.hideNavigationBar) {
activity?.navigationBarHeight ?: 0
} else {
0
}
// val navigationBarHeight =
// if (ReadBookConfig.hideNavigationBar) {
// activity?.navigationBarHeight ?: 0
// } else {
// 0
// }
binding.run {
vwMenuBg.setOnClickListener { runMenuOut() }
root.padding = 0
when (activity?.navigationBarGravity) {
Gravity.BOTTOM -> root.bottomPadding = navigationBarHeight
Gravity.LEFT -> root.leftPadding = navigationBarHeight
Gravity.RIGHT -> root.rightPadding = navigationBarHeight
}
// root.padding = 0
// when (activity?.navigationBarGravity) {
// Gravity.BOTTOM -> root.bottomPadding = navigationBarHeight
// Gravity.LEFT -> root.leftPadding = navigationBarHeight
// Gravity.RIGHT -> root.rightPadding = navigationBarHeight
// }
}
callBack.upSystemUiVisibility()
if (!LocalConfig.readMenuHelpVersionIsLast) {
@@ -236,6 +232,14 @@ class ReadMenu @JvmOverloads constructor(
titleBarAddition.gone()
}
upBrightnessVwPos()
/**
* 确保视图不被导航栏遮挡
*/
ViewCompat.setOnApplyWindowInsetsListener(this@ReadMenu) { _, windowInsets ->
val insets = windowInsets.getInsets(WindowInsetsCompat.Type.navigationBars())
root.bottomPadding = insets.bottom
windowInsets
}
}
fun reset() {
+2 -1
View File
@@ -16,8 +16,9 @@
<io.legado.app.lib.theme.view.ThemeBottomNavigationVIew
android:id="@+id/bottom_navigation_view"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_height="wrap_content"
android:background="@color/background"
android:minHeight="50dp"
app:itemActiveIndicatorStyle="@color/transparent"
app:labelVisibilityMode="unlabeled"
app:menu="@menu/main_bnv" />