feat: 优化

pull/219/head 3.20.051719
kunfei 5 years ago
parent 873e61b4ee
commit 7e111fc4aa
  1. 21
      app/src/main/java/io/legado/app/ui/book/read/page/PageView.kt

@ -3,11 +3,13 @@ package io.legado.app.ui.book.read.page
import android.annotation.SuppressLint
import android.content.Context
import android.graphics.Canvas
import android.graphics.Paint
import android.graphics.Rect
import android.util.AttributeSet
import android.view.MotionEvent
import android.widget.FrameLayout
import io.legado.app.help.ReadBookConfig
import io.legado.app.lib.theme.accentColor
import io.legado.app.service.help.ReadBook
import io.legado.app.ui.book.read.page.delegate.*
import io.legado.app.ui.book.read.page.entities.TextChapter
@ -26,6 +28,12 @@ class PageView(context: Context, attrs: AttributeSet) :
var prevPage: ContentView = ContentView(context)
var curPage: ContentView = ContentView(context)
var nextPage: ContentView = ContentView(context)
private val autoPageRect by lazy { Rect() }
private val autoPagePint by lazy {
Paint().apply {
color = context.accentColor
}
}
init {
addView(nextPage)
@ -50,9 +58,16 @@ class PageView(context: Context, attrs: AttributeSet) :
pageDelegate?.onDraw(canvas)
if (callBack.isAutoPage) {
nextPage.screenshot()?.let {
val rect =
Rect(0, 0, page_view.width, page_view.height * callBack.autoPageProgress / 460)
canvas.drawBitmap(it, rect, rect, null)
val bottom = page_view.height * callBack.autoPageProgress / 460
autoPageRect.set(0, 0, page_view.width, bottom)
canvas.drawBitmap(it, autoPageRect, autoPageRect, null)
canvas.drawRect(
0f,
bottom.toFloat() - 1,
page_view.width.toFloat(),
bottom.toFloat(),
autoPagePint
)
}
}
}

Loading…
Cancel
Save