pull/83/head
kunfei 5 years ago
parent 0aafde21e4
commit bee2a59594
  1. 34
      app/src/main/java/io/legado/app/ui/importbook/ImportBookActivity.kt

@ -14,6 +14,10 @@ import io.legado.app.base.VMBaseActivity
import io.legado.app.help.AppConfig import io.legado.app.help.AppConfig
import io.legado.app.utils.getViewModel import io.legado.app.utils.getViewModel
import kotlinx.android.synthetic.main.activity_import_book.* import kotlinx.android.synthetic.main.activity_import_book.*
import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.jetbrains.anko.sdk27.listeners.onClick import org.jetbrains.anko.sdk27.listeners.onClick
import java.io.File import java.io.File
@ -79,21 +83,27 @@ class ImportBookActivity : VMBaseActivity<ImportBookViewModel>(R.layout.activity
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
private fun upPath() { private fun upPath() {
rootDoc?.let { rootDoc -> rootDoc?.let { rootDoc ->
tv_path.text = rootDoc.name.toString() + File.separator launch(IO) {
var doc: DocumentFile? = rootDoc var path = rootDoc.name.toString() + File.separator
for (dirName in subDirs) { var doc: DocumentFile? = rootDoc
doc = doc?.findFile(dirName) for (dirName in subDirs) {
doc?.let { doc = doc?.findFile(dirName)
tv_path.text = tv_path.text.toString() + it.name + File.separator doc?.let {
path = path + it.name + File.separator
}
} }
} val docList = arrayListOf<DocumentFile>()
val docList = arrayListOf<DocumentFile>() doc?.listFiles()?.forEach {
doc?.listFiles()?.forEach { if (it.isDirectory || it.name?.endsWith(".txt", true) == true) {
if (it.isDirectory || it.name?.endsWith(".txt", true) == true) { docList.add(it)
docList.add(it) }
}
docList.sortWith(compareBy({ !it.isDirectory }, { it.name }))
withContext(Main) {
tv_path.text = path
importBookAdapter.setItems(docList)
} }
} }
importBookAdapter.setItems(docList)
} }
} }

Loading…
Cancel
Save