From 24714d86fa70a40a25b3fea61055634d91ced8ad Mon Sep 17 00:00:00 2001 From: HapeLee <1321903405@qq.com> Date: Sat, 30 Aug 2025 01:37:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8F=AF=E8=83=BD=E5=87=BA?= =?UTF-8?q?=E7=8E=B0=E7=9A=84=E5=B4=A9=E6=BA=83=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kazusa/ui/book/read/page/entities/TextPage.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legato/kazusa/ui/book/read/page/entities/TextPage.kt b/app/src/main/java/io/legato/kazusa/ui/book/read/page/entities/TextPage.kt index ad89acbe4..b9364baa2 100644 --- a/app/src/main/java/io/legato/kazusa/ui/book/read/page/entities/TextPage.kt +++ b/app/src/main/java/io/legato/kazusa/ui/book/read/page/entities/TextPage.kt @@ -291,10 +291,10 @@ data class TextPage( * @return */ fun containPos(chapterPos: Int): Boolean { - val line = lines.first() + val line = lines.firstOrNull() ?: return false // lines 为空时直接返回 false val startPos = line.chapterPosition val endPos = startPos + charSize - return chapterPos in startPos.. 0 && leftLineSize != lines.size) { + if (leftLineSize > 0 && leftLineSize <= lines.size) { val leftHeight = ceil(lines[leftLineSize - 1].lineBottom).toInt() renderHeight = max(renderHeight, leftHeight) } } + }