@@ -54,11 +54,12 @@ class ExpandableCardView @JvmOverloads constructor(context: Context, attrs: Attr
5454
5555 private var typedArray: TypedArray ? = null
5656 private var innerViewRes: Int = 0
57+ private var cardColor: Int = android.R .color.transparent
5758 private var cardStrokeColor: Int = android.R .color.transparent
5859 private var cardArrowColor: Int = android.R .color.darker_gray
5960 private var cardTextColor: Int = android.R .color.darker_gray
60- private var cardStrokeWidth: Int = 0
61- private var cardTitleSize: Float = 0f
61+ private var cardStrokeWidth: Float = 0f
62+ private var cardTitleSize: Float = 70f
6263 private var cardRadius: Float = 4f
6364 private var cardElevation: Float = 4f
6465 private var cardRipple: Boolean = false
@@ -118,35 +119,38 @@ class ExpandableCardView @JvmOverloads constructor(context: Context, attrs: Attr
118119 startExpanded = typedArray.getBoolean(R .styleable.ExpandableCardView_startExpanded , false )
119120 cardRipple = typedArray.getBoolean(R .styleable.ExpandableCardView_expandableCardRipple , false )
120121 expandableCardTitleBold = typedArray.getBoolean(R .styleable.ExpandableCardView_expandableCardTitleBold , false )
122+ cardColor = typedArray.getInteger(R .styleable.ExpandableCardView_expandableCardColor , android.R .color.transparent)
121123 cardStrokeColor = typedArray.getInteger(R .styleable.ExpandableCardView_expandableCardStrokeColor , android.R .color.transparent)
122124 cardArrowColor = typedArray.getInteger(R .styleable.ExpandableCardView_expandableCardArrowColor , android.R .color.black)
123- cardStrokeWidth = typedArray.getInteger (R .styleable.ExpandableCardView_expandableCardStrokeWidth , 0 )
124- cardTitleSize = typedArray.getFloat (R .styleable.ExpandableCardView_expandableCardTitleSize , 0f )
125- cardElevation = typedArray.getFloat (R .styleable.ExpandableCardView_expandableCardElevation , 4f )
126- cardRadius = typedArray.getFloat (R .styleable.ExpandableCardView_expandableCardRadius , 4f )
125+ cardStrokeWidth = typedArray.getDimension (R .styleable.ExpandableCardView_expandableCardStrokeWidth , 0f )
126+ cardTitleSize = typedArray.getDimension (R .styleable.ExpandableCardView_expandableCardTitleSize , 70f )
127+ cardElevation = typedArray.getDimension (R .styleable.ExpandableCardView_expandableCardElevation , 4f )
128+ cardRadius = typedArray.getDimension (R .styleable.ExpandableCardView_expandableCardRadius , 4f )
127129 cardTextColor = typedArray.getInteger(R .styleable.ExpandableCardView_expandableCardTitleColor , android.R .color.darker_gray)
128130
129131 typedArray.recycle()
130132 }
131133
132134 override fun onFinishInflate () {
133135 super .onFinishInflate()
136+ val density = resources.displayMetrics.density;
134137
135138 // Setting attributes
136139 if (! TextUtils .isEmpty(title)) card_title.text = title
137140 if (cardTextColor != android.R .color.darker_gray) card_title.setTextColor(cardTextColor)
138141 if (cardStrokeColor != android.R .color.transparent) card_layout.strokeColor = cardStrokeColor
139- if (cardStrokeWidth != 0 ) card_layout.strokeWidth = cardStrokeWidth
140- if (cardTitleSize != 0f ) card_title.textSize = cardTitleSize
142+ if (cardColor != android.R .color.transparent) card_layout.setCardBackgroundColor(cardColor)
143+ if (cardStrokeWidth != 0f ) card_layout.strokeWidth = cardStrokeWidth.toInt()
144+ if (cardTitleSize != 0f ) card_title.textSize = cardTitleSize / density
141145 if (! cardRipple) card_layout.rippleColor = ContextCompat .getColorStateList(context, android.R .color.transparent)
142146
143147 if (expandableCardTitleBold) {
144148 card_title.setTypeface(null , Typeface .BOLD )
145149 }
146150
147151 card_switch.visibility = if (showSwitch) View .VISIBLE else View .GONE
148- card_layout.radius = Utils .convertPixelsToDp( cardRadius, context)
149- card_layout.cardElevation = Utils .convertPixelsToDp( cardElevation, context)
152+ card_layout.radius = cardRadius
153+ card_layout.cardElevation = cardElevation
150154
151155
152156 if (cardArrowColor != android.R .color.black) card_arrow.setColorFilter(cardArrowColor, android.graphics.PorterDuff .Mode .SRC_IN )
0 commit comments