pull/32/head
kunfei 5 years ago
parent 1c9e6846b3
commit b66f578bff
  1. 1
      app/src/main/java/io/legado/app/data/entities/rule/ExploreRule.kt
  2. 11
      app/src/main/java/io/legado/app/ui/main/findbook/FindBookAdapter.kt
  3. 2
      app/src/main/java/io/legado/app/ui/main/findbook/FindBookFragment.kt

@ -36,6 +36,7 @@ data class ExploreRule(
val b = a.split("(&&|\n)+".toRegex()) val b = a.split("(&&|\n)+".toRegex())
b.map { c -> b.map { c ->
val d = c.split("::") val d = c.split("::")
if (d.size > 1)
exploreKinds.add(ExploreKind(d[0], d[1])) exploreKinds.add(ExploreKind(d[0], d[1]))
} }
return exploreKinds return exploreKinds

@ -10,15 +10,18 @@ import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import io.legado.app.R import io.legado.app.R
import io.legado.app.data.entities.BookSource import io.legado.app.data.entities.BookSource
import io.legado.app.help.coroutine.Coroutine
import io.legado.app.lib.theme.ColorUtils import io.legado.app.lib.theme.ColorUtils
import io.legado.app.utils.gone import io.legado.app.utils.gone
import io.legado.app.utils.visible import io.legado.app.utils.visible
import kotlinx.android.synthetic.main.item_find_book.view.* import kotlinx.android.synthetic.main.item_find_book.view.*
import kotlinx.android.synthetic.main.item_text.view.* import kotlinx.android.synthetic.main.item_text.view.*
import kotlinx.coroutines.CoroutineScope
import org.jetbrains.anko.sdk27.listeners.onClick import org.jetbrains.anko.sdk27.listeners.onClick
class FindBookAdapter:PagedListAdapter<BookSource, FindBookAdapter.MyViewHolder>(DIFF_CALLBACK) { class FindBookAdapter(private val scope: CoroutineScope) :
PagedListAdapter<BookSource, FindBookAdapter.MyViewHolder>(DIFF_CALLBACK) {
var exIndex = 0 var exIndex = 0
@ -58,7 +61,10 @@ class FindBookAdapter:PagedListAdapter<BookSource, FindBookAdapter.MyViewHolder>
} }
if (exIndex == position) { if (exIndex == position) {
gl_child.visible() gl_child.visible()
bookSource.getExploreRule().getExploreKinds(bookSource.bookSourceUrl)?.let { Coroutine.async(scope) {
bookSource.getExploreRule().getExploreKinds(bookSource.bookSourceUrl)
}.onSuccess {
it?.let {
var rowNum = 0 var rowNum = 0
var columnNum = 0 var columnNum = 0
gl_child.removeAllViews() gl_child.removeAllViews()
@ -81,6 +87,7 @@ class FindBookAdapter:PagedListAdapter<BookSource, FindBookAdapter.MyViewHolder>
} }
} }
} }
}
} else { } else {
gl_child.gone() gl_child.gone()
} }

@ -34,7 +34,7 @@ class FindBookFragment : BaseFragment(R.layout.fragment_find_book) {
private fun initRecyclerView() { private fun initRecyclerView() {
ATH.applyEdgeEffectColor(rv_find) ATH.applyEdgeEffectColor(rv_find)
rv_find.layoutManager = LinearLayoutManager(context) rv_find.layoutManager = LinearLayoutManager(context)
adapter = FindBookAdapter() adapter = FindBookAdapter(this)
rv_find.adapter = adapter rv_find.adapter = adapter
} }

Loading…
Cancel
Save