Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class VocabularyAdapter(private val typeView: Boolean) :
- RecyclerView.Adapter<RecyclerView.ViewHolder>() {
- var wordsVocabulary = listOf<GermanEnglishWord>()
- private var wordsEditor = listOf<GermanEnglishWord>()
- var isGerman = true
- override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
- val layoutInflater = LayoutInflater.from(parent.context)
- return if (typeView) {
- VocabularyItemViewHolder(layoutInflater.inflate(R.layout.one_word, parent, false))
- } else {
- EditorItemViewHolder(layoutInflater.inflate(R.layout.bubble_item, parent, false))
- }
- }
- override fun getItemCount(): Int {
- return if (typeView) wordsVocabulary.size else wordsEditor.size
- }
- override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
- if (holder is VocabularyItemViewHolder) {
- holder.bind(wordsVocabulary[position])
- }
- else if (holder is EditorItemViewHolder) {
- holder.bind(wordsEditor[position])
- }
- }
- inner class VocabularyItemViewHolder(v: View) : RecyclerView.ViewHolder(v) {
- private val wordItem = v.word_item
- fun bind(word: GermanEnglishWord) {
- wordItem.text = if (isGerman) word.german else word.english
- }
- }
- inner class EditorItemViewHolder(v: View) : RecyclerView.ViewHolder(v) {
- private val wordItem = v.bubble_text
- fun bind(word: GermanEnglishWord) {
- wordItem.text = if (isGerman) word.german else word.english
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement