diff --git a/.travis.yml b/.travis.yml
index 7812812..b054cf5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,8 +6,8 @@ android:
- tools
- tools
- platform-tools
- - build-tools-27.0.0
- - android-27
+ - build-tools-29.0.3
+ - android-29
- extra-android-m2repository
before_cache:
diff --git a/app/build.gradle b/app/build.gradle
index 7c556c1..c952a2b 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,13 +1,15 @@
apply plugin: 'com.android.application'
+apply plugin: 'kotlin-android-extensions'
+apply plugin: 'kotlin-android'
android {
- compileSdkVersion 27
- buildToolsVersion "27.0.0"
+ compileSdkVersion 29
+ buildToolsVersion "29.0.3"
defaultConfig {
applicationId "com.borjabravo.readmoretextview"
minSdkVersion 14
- targetSdkVersion 27
+ targetSdkVersion 29
versionCode 1
versionName "1.0"
}
@@ -25,8 +27,13 @@ android {
}
dependencies {
- implementation 'com.android.support:appcompat-v7:27.0.0'
- implementation 'com.android.support:design:27.0.0'
+ implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
+ implementation "androidx.core:core-ktx:1.2.0"
+ implementation 'androidx.appcompat:appcompat:1.1.0'
+ implementation 'com.google.android.material:material:1.1.0'
implementation project(':readmoretextview')
- testImplementation 'junit:junit:4.12'
+ testImplementation 'junit:junit:4.13'
+}
+repositories {
+ mavenCentral()
}
diff --git a/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java b/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java
index 8f50499..0250681 100644
--- a/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java
+++ b/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java
@@ -1,9 +1,10 @@
package com.borjabravo.readmoretextviewsample;
import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
+import androidx.appcompat.app.AppCompatActivity;
+
public class MainActivity extends AppCompatActivity {
@Override
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 01a64c6..fac0e0e 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -4,23 +4,23 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
- android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
+ android:paddingTop="@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
- android:paddingTop="@dimen/activity_vertical_margin">
+ android:paddingBottom="@dimen/activity_vertical_margin">
+ app:trimCollapsedText="@string/show_all_content" />
+ app:colorClickableText="?attr/colorPrimary" />
+ app:trimLength="100" />
+ android:layout_height="wrap_content" />
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 23265b0..b258480 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,8 +1,8 @@
ReadMoreTextViewSample
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras feugiat, nunc eget volutpat viverra, lacus ligula venenatis nulla, in accumsan eros eros nec ipsum. Fusce eget massa id lorem blandit lobortis. Donec lacus ligula, commodo quis eleifend ac, rhoncus sed mi. Curabitur luctus justo vel consequat fermentum. Donec facilisis elit in sem suscipit pharetra. Curabitur porta et dolor eget pretium. Mauris quam augue, interdum nec tempor vitae, consectetur at erat.
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras feugiat, nunc eget volutpat viverra, lacus ligula venenatis nulla, in accumsan eros eros nec ipsum. Fusce eget massa id lorem blandit lobortis. Donec lacus ligula, commodo quis eleifend ac, rhoncus sed mi.
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.Cras feugiat, nunc eget volutpat viverra, lacus ligula venenatis nulla, in accumsan eros eros nec ipsum. Fusce eget massa id lorem blandit lobortis.
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras feugiat, nunc eget volutpat viverra, lacus ligula venenatis nulla, in accumsan eros nec ipsum. Fusce eget massa id lorem blandit lobortis. Donec lacus ligula, commodo quis eleifend ac, rhoncus sed mi. Curabitur luctus justo vel consequat fermentum. Donec facilisis elit in sem suscipit pharetra. Curabitur porta et dolor eget pretium. Mauris quam augue, interdum nec tempor vitae, consectetur at erat.
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras feugiat, nunc eget volutpat viverra, lacus ligula venenatis nulla, in accumsan eros nec ipsum. Fusce eget massa id lorem blandit lobortis. Donec lacus ligula, commodo quis eleifend ac, rhoncus sed mi.
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.Cras feugiat, nunc eget volutpat viverra, lacus ligula venenatis nulla, in accumsan eros nec ipsum. Fusce eget massa id lorem blandit lobortis.
Show all content
One line text
diff --git a/build.gradle b/build.gradle
index ea35e68..74223e1 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,11 +1,13 @@
buildscript {
+ ext.kotlin_version = '1.3.71'
repositories {
jcenter()
google()
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.0.0'
+ classpath 'com.android.tools.build:gradle:3.6.2'
classpath 'com.novoda:bintray-release:0.5.0'
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
diff --git a/gradle.properties b/gradle.properties
index 1d3591c..915f0e6 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -15,4 +15,6 @@
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
-# org.gradle.parallel=true
\ No newline at end of file
+# org.gradle.parallel=true
+android.enableJetifier=true
+android.useAndroidX=true
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index b692f5e..a2499ec 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Sun Nov 12 12:19:18 CET 2017
+#Sun Apr 12 02:54:16 EAT 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
diff --git a/readmoretextview/build.gradle b/readmoretextview/build.gradle
index 1fefb5e..323d608 100644
--- a/readmoretextview/build.gradle
+++ b/readmoretextview/build.gradle
@@ -1,4 +1,6 @@
apply plugin: 'com.android.library'
+apply plugin: 'kotlin-android-extensions'
+apply plugin: 'kotlin-android'
apply plugin: 'com.novoda.bintray-release'
publish {
@@ -12,12 +14,12 @@ publish {
}
android {
- compileSdkVersion 27
- buildToolsVersion '27.0.0'
+ compileSdkVersion 29
+ buildToolsVersion '29.0.3'
defaultConfig {
minSdkVersion 14
- targetSdkVersion 27
+ targetSdkVersion 29
versionCode 1
versionName "1.0"
}
@@ -28,6 +30,11 @@ android {
}
dependencies {
- implementation 'com.android.support:support-compat:27.0.0'
- testImplementation 'junit:junit:4.12'
+ implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
+ implementation "androidx.core:core-ktx:1.2.0"
+ implementation 'androidx.core:core:1.2.0'
+ testImplementation 'junit:junit:4.13'
+}
+repositories {
+ mavenCentral()
}
\ No newline at end of file
diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java
index f560151..c920a45 100644
--- a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java
+++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java
@@ -19,7 +19,6 @@
import android.content.res.TypedArray;
import android.graphics.Color;
import android.os.Build;
-import android.support.v4.content.ContextCompat;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.TextPaint;
@@ -30,6 +29,8 @@
import android.view.ViewTreeObserver;
import android.widget.TextView;
+import androidx.core.content.ContextCompat;
+
public class ReadMoreTextView extends TextView {
private static final int TRIM_MODE_LINES = 0;
diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/utils.kt b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/utils.kt
new file mode 100644
index 0000000..63cfb5c
--- /dev/null
+++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/utils.kt
@@ -0,0 +1,15 @@
+package com.borjabravo.readmoretextview
+
+import android.content.Context
+import androidx.annotation.AttrRes
+import androidx.annotation.ColorInt
+
+@ColorInt
+fun getThemedColor(context: Context, @AttrRes themeResId: Int): Int {
+ val a = context.obtainStyledAttributes(null, intArrayOf(themeResId))
+ try {
+ return a.getColor(0, 9)
+ } finally {
+ a.recycle()
+ }
+}
\ No newline at end of file