浏览代码

目录菜单的下载按钮无法触发

HapeLee 1 年之前
父节点
当前提交
0c3ec44a9a
共有 1 个文件被更改,包括 3 次插入 和 7 次删除
  1. 3 7
      app/src/main/java/io/legato/kazusa/ui/book/toc/TocActivity.kt

+ 3 - 7
app/src/main/java/io/legato/kazusa/ui/book/toc/TocActivity.kt

@@ -221,7 +221,7 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
 
 
     @SuppressLint("SetTextI18n")
     @SuppressLint("SetTextI18n")
     fun showDownloadDialog() {
     fun showDownloadDialog() {
-        ReadBook.book?.let { book ->
+        (viewModel.bookData.value ?: ReadBook.book)?.let { book ->
             alert(titleResource = R.string.offline_cache) {
             alert(titleResource = R.string.offline_cache) {
                 val alertBinding = DialogDownloadChoiceBinding.inflate(layoutInflater).apply {
                 val alertBinding = DialogDownloadChoiceBinding.inflate(layoutInflater).apply {
                     editStart.setText((book.durChapterIndex + 1).toString())
                     editStart.setText((book.durChapterIndex + 1).toString())
@@ -230,12 +230,8 @@ class TocActivity : VMBaseActivity<ActivityChapterListBinding, TocViewModel>(),
                 customView { alertBinding.root }
                 customView { alertBinding.root }
                 okButton {
                 okButton {
                     alertBinding.run {
                     alertBinding.run {
-                        val start = editStart.text!!.toString().let {
-                            if (it.isEmpty()) 0 else it.toInt()
-                        }
-                        val end = editEnd.text!!.toString().let {
-                            if (it.isEmpty()) book.totalChapterNum else it.toInt()
-                        }
+                        val start = editStart.text!!.toString().toIntOrNull() ?: 0
+                        val end = editEnd.text!!.toString().toIntOrNull() ?: book.totalChapterNum
                         val indices = (start - 1..end - 1).toList()
                         val indices = (start - 1..end - 1).toList()
                         CacheBook.start(this@TocActivity, book, indices)
                         CacheBook.start(this@TocActivity, book, indices)
                     }
                     }