• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package com.airbnb.lottie.samples
2 
3 import android.content.Context
4 import androidx.annotation.DrawableRes
5 import android.util.AttributeSet
6 import android.view.View
7 import android.widget.LinearLayout
8 import com.airbnb.epoxy.CallbackProp
9 import com.airbnb.epoxy.ModelProp
10 import com.airbnb.epoxy.ModelView
11 import com.airbnb.epoxy.TextProp
12 import kotlinx.android.synthetic.main.list_item_preview.view.*
13 
14 @ModelView(autoLayout = ModelView.Size.MATCH_WIDTH_WRAP_HEIGHT)
15 class PreviewItemView @JvmOverloads constructor(
16         context: Context,
17         attrs: AttributeSet? = null,
18         defStyleAttr: Int = 0
19 ) : LinearLayout(context, attrs, defStyleAttr) {
20 
21     init {
22         orientation = VERTICAL
23         inflate(R.layout.list_item_preview)
24     }
25 
26     @TextProp
setTitlenull27     fun setTitle(title: CharSequence) {
28         titleView.text = title
29     }
30 
31     @ModelProp
setIconnull32     fun setIcon(@DrawableRes icon: Int) {
33         iconView.setImageResource(icon)
34     }
35 
36     @CallbackProp
setClickListenernull37     fun setClickListener(clickListener: View.OnClickListener?) {
38         container.setOnClickListener(clickListener)
39     }
40 }