Skip to content

Commit 03ace6a

Browse files
committed
Added app:expandableCardTitleSize attribute for styling
Switched to dimensions *please keep this in mind when updating the library in your project* Updated gradle
1 parent 9cba283 commit 03ace6a

7 files changed

Lines changed: 33 additions & 26 deletions

File tree

.idea/modules.xml

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/res/layout/activity_main.xml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@
5656
android:layout_marginBottom="10dp"
5757
app:expandOnClick="true"
5858
app:expandableCardRipple="true"
59-
app:expandableCardRadius="100"
60-
app:expandableCardStrokeWidth="15"
61-
app:expandableCardElevation="70"
59+
app:expandableCardRadius="6dp"
60+
app:expandableCardStrokeWidth="1dp"
61+
app:expandableCardElevation="4dp"
6262
app:expandableCardStrokeColor="@color/colorAccent"
6363
app:expandableCardArrowColor="@color/colorAccent"
6464
app:animationDuration="900"
@@ -76,9 +76,10 @@
7676
android:layout_marginBottom="10dp"
7777
app:expandOnClick="true"
7878
app:expandableCardTitleBold="true"
79-
app:expandableCardTitleSize="30"
79+
app:expandableCardColor="@color/colorAccent"
80+
app:expandableCardTitleSize="18sp"
8081
app:expandableCardTitleColor="@color/colorAccent"
81-
app:expandableCardElevation="200"
82+
app:expandableCardElevation="8dp"
8283
app:icon="@drawable/ic_location"
8384
app:inner_view="@layout/location"
8485
app:showSwitch="true"
@@ -92,6 +93,7 @@
9293
android:layout_marginTop="10dp"
9394
android:layout_marginRight="20dp"
9495
android:layout_marginBottom="10dp"
96+
app:expandableCardElevation="0dp"
9597
app:animationDuration="900"
9698
app:expandOnClick="true"
9799
app:icon="@drawable/ic_dates"

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ buildscript {
77
jcenter()
88
}
99
dependencies {
10-
classpath 'com.android.tools.build:gradle:3.5.3'
10+
classpath 'com.android.tools.build:gradle:3.6.0'
1111
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1212

1313
// NOTE: Do not place your application dependencies here; they belong

expandablecardview/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ apply plugin: 'kotlin-android-extensions'
55
ext {
66
PUBLISH_GROUP_ID = 'host.stjin'
77
PUBLISH_ARTIFACT_ID = 'expandable-cardview'
8-
PUBLISH_VERSION = '1.2.0'
8+
PUBLISH_VERSION = '1.2.1'
99
}
1010

1111
android {

expandablecardview/src/main/java/host/stjin/expandablecardview/ExpandableCardView.kt

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -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)

expandablecardview/src/main/res/values/attr.xml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@
1010
<attr name="startExpanded" format="boolean"/>
1111
<attr name="expandableCardRipple" format="boolean"/>
1212
<attr name="expandableCardTitleBold" format="boolean"/>
13-
<attr name="expandableCardStrokeWidth" format="integer"/>
14-
<attr name="expandableCardTitleSize" format="float"/>
13+
<attr name="expandableCardStrokeWidth" format="dimension"/>
14+
<attr name="expandableCardTitleSize" format="dimension"/>
15+
<attr name="expandableCardColor" format="reference"/>
1516
<attr name="expandableCardStrokeColor" format="reference"/>
1617
<attr name="expandableCardArrowColor" format="reference"/>
1718
<attr name="expandableCardTitleColor" format="reference"/>
18-
<attr name="expandableCardElevation" format="float"/>
19-
<attr name="expandableCardRadius" format="integer"/>
19+
<attr name="expandableCardElevation" format="dimension"/>
20+
<attr name="expandableCardRadius" format="dimension"/>
2021
</declare-styleable>
2122
</resources>
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
#Sat Feb 01 10:04:14 CET 2020
1+
#Wed Feb 26 19:37:35 CET 2020
22
distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
6+
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip

0 commit comments

Comments
 (0)