aboutsummaryrefslogtreecommitdiff
path: root/sample/src/main/kotlin/ca/allanwang/kau/sample/PermissionCheckbox.kt
blob: beb1a290f4185a559ad7e05b2c532b2c06d56be3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package ca.allanwang.kau.sample

import android.support.v7.widget.RecyclerView
import android.view.View
import android.widget.CheckBox
import android.widget.TextView
import ca.allanwang.kau.iitems.KauIItem
import ca.allanwang.kau.utils.hasPermission

/**
 * Created by Allan Wang on 2017-07-03.
 */
class PermissionCheckbox(val permission: String) : KauIItem<PermissionCheckbox, PermissionCheckbox.ViewHolder>(
        R.layout.permission_checkbox, { ViewHolder(it) }) {

    override fun bindView(holder: ViewHolder, payloads: MutableList<Any>) {
        super.bindView(holder, payloads)
        holder.text.text = permission
        holder.checkbox.isChecked = holder.itemView.context.hasPermission(permission)
        holder.checkbox.isClickable = false
        holder.checkbox.jumpDrawablesToCurrentState() //Cancel the animation
    }

    class ViewHolder(v: View) : RecyclerView.ViewHolder(v) {
        val text: TextView = v.findViewById(R.id.perm_text)
        val checkbox: CheckBox = v.findViewById(R.id.perm_checkbox)
    }
}