pull/90/head^2
kunfei 5 years ago
parent 988388f530
commit fec631fecf
  1. 8
      app/src/main/java/io/legado/app/ui/book/arrange/ArrangeBookActivity.kt
  2. 16
      app/src/main/java/io/legado/app/ui/book/arrange/ArrangeBookAdapter.kt

@ -10,14 +10,17 @@ import io.legado.app.App
import io.legado.app.R
import io.legado.app.base.VMBaseActivity
import io.legado.app.data.entities.Book
import io.legado.app.data.entities.BookGroup
import io.legado.app.lib.theme.ATH
import io.legado.app.utils.getViewModel
import kotlinx.android.synthetic.main.activity_arrange_book.*
class ArrangeBookActivity : VMBaseActivity<ArrangeBookViewModel>(R.layout.activity_arrange_book) {
class ArrangeBookActivity : VMBaseActivity<ArrangeBookViewModel>(R.layout.activity_arrange_book),
ArrangeBookAdapter.CallBack {
override val viewModel: ArrangeBookViewModel
get() = getViewModel(ArrangeBookViewModel::class.java)
override val groupList: List<BookGroup> = arrayListOf()
private lateinit var adapter: ArrangeBookAdapter
private var booksLiveData: LiveData<List<Book>>? = null
@ -41,7 +44,7 @@ class ArrangeBookActivity : VMBaseActivity<ArrangeBookViewModel>(R.layout.activi
private fun initView() {
ATH.applyEdgeEffectColor(recycler_view)
recycler_view.layoutManager = LinearLayoutManager(this)
adapter = ArrangeBookAdapter(this)
adapter = ArrangeBookAdapter(this, this)
recycler_view.adapter = adapter
}
@ -53,4 +56,5 @@ class ArrangeBookActivity : VMBaseActivity<ArrangeBookViewModel>(R.layout.activi
})
}
}

@ -5,10 +5,11 @@ import io.legado.app.R
import io.legado.app.base.adapter.ItemViewHolder
import io.legado.app.base.adapter.SimpleRecyclerAdapter
import io.legado.app.data.entities.Book
import io.legado.app.data.entities.BookGroup
import kotlinx.android.synthetic.main.item_arrange_book.view.*
class ArrangeBookAdapter(context: Context) :
class ArrangeBookAdapter(context: Context, val callBack: CallBack) :
SimpleRecyclerAdapter<Book>(context, R.layout.item_arrange_book) {
@ -16,7 +17,20 @@ class ArrangeBookAdapter(context: Context) :
with(holder.itemView) {
tv_name.text = item.name
tv_author.text = context.getString(R.string.author_show, item.author)
tv_group.text = getGroupName(item.group)
}
}
private fun getGroupName(groupId: Int): String {
callBack.groupList.forEach {
if (it.groupId == groupId) {
return it.groupName
}
}
return context.getString(R.string.group)
}
interface CallBack {
val groupList: List<BookGroup>
}
}
Loading…
Cancel
Save