使用slider替换seekbar

This commit is contained in:
HapeLee
2025-06-04 14:51:44 +08:00
parent 3f0e630ed3
commit ad1e83b959
6 changed files with 114 additions and 238 deletions
@@ -210,9 +210,10 @@ class MangaMenu @JvmOverloads constructor(
seekReadPage.addOnChangeListener { slider, value, fromUser ->
if (fromUser) {
callBack.skipToPage(value.toInt())
callBack.skipToPage(value.toInt() - 1)
}
}
seekReadPage.addOnSliderTouchListener(object : Slider.OnSliderTouchListener {
override fun onStartTrackingTouch(slider: Slider) {
vwMenuBg.setOnClickListener(null)
@@ -223,13 +224,12 @@ class MangaMenu @JvmOverloads constructor(
}
})
}
fun upSeekBar(value: Int, count: Int) {
binding.seekReadPage.apply {
valueFrom = 0f
valueTo = (count - 1).toFloat()
valueFrom = 1f
valueTo = (count).toFloat()
this.value = value.toFloat()
stepSize = 1f
}
@@ -211,7 +211,7 @@ class ReadMenu @JvmOverloads constructor(
// vwBrightnessPosAdjust.setColorFilter(textColor, PorterDuff.Mode.SRC_IN)
llBrightness.setOnClickListener(null)
seekBrightness.post {
seekBrightness.progress = AppConfig.readBrightness
seekBrightness.value = AppConfig.readBrightness.toFloat()
}
if (AppConfig.showReadTitleBarAddition) {
titleBarAddition.visible()
@@ -378,19 +378,22 @@ class ReadMenu @JvmOverloads constructor(
upBrightnessState()
}
//亮度调节
seekBrightness.setOnSeekBarChangeListener(object : SeekBarChangeListener {
seekBrightness.addOnChangeListener { slider, value, fromUser ->
if (fromUser) {
setScreenBrightness(value)
}
}
seekBrightness.addOnSliderTouchListener(object : Slider.OnSliderTouchListener {
override fun onStartTrackingTouch(slider: Slider) {
override fun onProgressChanged(seekBar: SeekBar, progress: Int, fromUser: Boolean) {
if (fromUser) {
setScreenBrightness(progress.toFloat())
}
}
override fun onStopTrackingTouch(seekBar: SeekBar) {
AppConfig.readBrightness = seekBar.progress
override fun onStopTrackingTouch(slider: Slider) {
AppConfig.readBrightness = slider.value.toInt()
}
})
vwBrightnessPosAdjust.setOnClickListener {
AppConfig.brightnessVwPos = !AppConfig.brightnessVwPos
upBrightnessVwPos()
@@ -524,26 +527,29 @@ class ReadMenu @JvmOverloads constructor(
ReadBook.curTextChapter?.let { chapter ->
if (chapter.pageSize > 0) {
valueFrom = 1f
valueTo = chapter.pageSize.toFloat()
valueTo = chapter.pageSize.toFloat().coerceAtLeast(2f)
value = (ReadBook.durPageIndex).coerceIn(1, chapter.pageSize).toFloat()
stepSize = 1f
} else {
valueFrom = 1f
valueTo = 1f
valueTo = 2f
value = 1f
}
} ?: run {
valueFrom = 1f
valueTo = 1f
value = 1f
}
}
"chapter" -> {
valueFrom = 1f
valueTo = ReadBook.simulatedChapterSize.toFloat()
value = (ReadBook.durChapterIndex).coerceIn(1, ReadBook.simulatedChapterSize).toFloat()
stepSize = 1f
if (ReadBook.simulatedChapterSize > 0)
{
valueFrom = 1f
valueTo = ReadBook.simulatedChapterSize.toFloat().coerceAtLeast(2f)
value = (ReadBook.durChapterIndex).coerceIn(1, ReadBook.simulatedChapterSize).toFloat()
stepSize = 1f
} else {
valueFrom = 1f
valueTo = 2f
value = 1f
}
}
}
}
@@ -93,20 +93,20 @@ class AutoReadDialog : BaseBottomSheetDialogFragment(R.layout.dialog_auto_read)
}
private fun initEvent() {
binding.llMainMenu.setOnClickListener {
binding.btnMainMenu.setOnClickListener {
callBack?.showMenuBar()
dismissAllowingStateLoss()
}
binding.llSetting.setOnClickListener {
binding.btnSetting.setOnClickListener {
(activity as BaseReadBookActivity).showPageAnimConfig {
(activity as ReadBookActivity).upPageAnim()
ReadBook.loadContent(false)
}
}
binding.llCatalog.setOnClickListener { callBack?.openChapterList() }
binding.llAutoPageStop.setOnClickListener {
binding.btnCatalog.setOnClickListener { callBack?.openChapterList() }
binding.btnAutoPageStop.setOnClickListener {
callBack?.autoPageStop()
binding.llAutoPageStop.post {
binding.btnAutoPageStop.post {
dismissAllowingStateLoss()
}
}