From 1d54332e4d9f071fd2cab9347096ffbbeeb117e8 Mon Sep 17 00:00:00 2001 From: kunfei Date: Fri, 11 Feb 2022 18:45:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/assets/updateLog.md | 1 + .../legado/app/ui/book/cache/CacheAdapter.kt | 45 +++++++++++++------ 2 files changed, 32 insertions(+), 14 deletions(-) diff --git a/app/src/main/assets/updateLog.md b/app/src/main/assets/updateLog.md index ae7281dfb..f6260144d 100644 --- a/app/src/main/assets/updateLog.md +++ b/app/src/main/assets/updateLog.md @@ -17,6 +17,7 @@ * 目录界面菜单添加替换开关,开启替换加载时间会长一些 * 书源校验添加规则失效分组,更新书源界面帮助文档 * 替换规则添加作用于标题和作用于正文 +* 导出支持本地书籍再次导出 * 修复一些bug **2022/02/09** diff --git a/app/src/main/java/io/legado/app/ui/book/cache/CacheAdapter.kt b/app/src/main/java/io/legado/app/ui/book/cache/CacheAdapter.kt index 45439f31b..bf8ae7001 100644 --- a/app/src/main/java/io/legado/app/ui/book/cache/CacheAdapter.kt +++ b/app/src/main/java/io/legado/app/ui/book/cache/CacheAdapter.kt @@ -33,17 +33,29 @@ class CacheAdapter(context: Context, private val callBack: CallBack) : if (payloads.isEmpty()) { tvName.text = item.name tvAuthor.text = context.getString(R.string.author_show, item.getRealAuthor()) - val cs = cacheChapters[item.bookUrl] - if (cs == null) { - tvDownload.setText(R.string.loading) + if (item.isLocalBook()) { + tvDownload.setText(R.string.local_book) } else { - tvDownload.text = - context.getString(R.string.download_count, cs.size, item.totalChapterNum) + val cs = cacheChapters[item.bookUrl] + if (cs == null) { + tvDownload.setText(R.string.loading) + } else { + tvDownload.text = + context.getString( + R.string.download_count, + cs.size, + item.totalChapterNum + ) + } } } else { - val cacheSize = cacheChapters[item.bookUrl]?.size ?: 0 - tvDownload.text = - context.getString(R.string.download_count, cacheSize, item.totalChapterNum) + if (item.isLocalBook()) { + tvDownload.setText(R.string.local_book) + } else { + val cacheSize = cacheChapters[item.bookUrl]?.size ?: 0 + tvDownload.text = + context.getString(R.string.download_count, cacheSize, item.totalChapterNum) + } } upDownloadIv(ivDownload, item) upExportInfo(tvMsg, progressExport, item) @@ -72,14 +84,19 @@ class CacheAdapter(context: Context, private val callBack: CallBack) : } private fun upDownloadIv(iv: ImageView, book: Book) { - CacheBook.cacheBookMap[book.bookUrl]?.let { - if (it.isRun()) { - iv.setImageResource(R.drawable.ic_stop_black_24dp) - } else { + if (book.isLocalBook()) { + iv.gone() + } else { + iv.visible() + CacheBook.cacheBookMap[book.bookUrl]?.let { + if (it.isRun()) { + iv.setImageResource(R.drawable.ic_stop_black_24dp) + } else { + iv.setImageResource(R.drawable.ic_play_24dp) + } + } ?: let { iv.setImageResource(R.drawable.ic_play_24dp) } - } ?: let { - iv.setImageResource(R.drawable.ic_play_24dp) } }