From 89ee1f2f20a42dbadeddd2962f43bdf1f1ed7376 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=BE=E5=88=98=E4=BF=9D=2EFelix?= Date: Mon, 18 Nov 2019 14:19:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=AF=E4=BB=A5=E5=8A=A8=E6=80=81=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E6=BB=9A=E5=8A=A8=E5=AD=97=E5=B9=95=E7=9A=84=E9=A2=9C?= =?UTF-8?q?=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/caches/build_file_checksums.ser | Bin 592 -> 592 bytes .idea/caches/gradle_models.ser | Bin 101269 -> 161513 bytes .idea/misc.xml | 15 ++++++++++-- README.md | 8 +++--- ScrollTextviewLib/build.gradle | 8 +++--- .../scrolltextview/ScrollTextView.java | 23 ++++++++++++------ app/build.gradle | 8 +++--- .../fragment/scrolltextview/MainActivity.java | 11 +++++---- 8 files changed, 47 insertions(+), 26 deletions(-) diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 385e5a6be5e651ad4e4ec8877e855d31e47c1800..4db6149e2f18a2917ca7ea513121b0916eefc33b 100644 GIT binary patch delta 54 zcmV-60LlN*1kePKm;`+$-rJF!g%DW*#WSenigCpJ{EjJu_BgXK0S*BXmBc&z*wO8@`> delta 54 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

g88WXAcGpWa442n`?a80QJY*Zl9%T+P9a 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 diff --git a/README.md b/README.md index 27b0982..1a6c340 100644 --- a/README.md +++ b/README.md @@ -22,13 +22,15 @@ ``` scrollText = findViewById(R.id.scrollText); scrollText.setSpeed(4); - scrollText.setText("new text"); //已经修改setText() 没能动态生效的问题 + scrollText.setText("new text"); + scrollText.setTextColor(0xffad43ae); + ``` # Gradle 集成使用 ``` - implementation 'anylife.scrolltextview:ScrollTextviewLib:1.4.5' + implementation 'anylife.scrolltextview:ScrollTextviewLib:1.4.6' ``` # Maven 集成使用 @@ -36,7 +38,7 @@ anylife.scrolltextview ScrollTextviewLib - 1.4.5 + 1.4.6 pom ``` diff --git a/ScrollTextviewLib/build.gradle b/ScrollTextviewLib/build.gradle index 945dba8..1b1f84a 100644 --- a/ScrollTextviewLib/build.gradle +++ b/ScrollTextviewLib/build.gradle @@ -4,11 +4,11 @@ apply plugin: 'com.jfrog.bintray' //jfrog android { - compileSdkVersion 26 + compileSdkVersion 28 defaultConfig { minSdkVersion 15 - targetSdkVersion 26 + targetSdkVersion 28 versionCode 5 versionName "1.3" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" @@ -25,10 +25,10 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation 'com.android.support:appcompat-v7:26.1.0' + implementation 'com.android.support:appcompat-v7:28.0.0' } -version = "1.4.5" //版本号,每次提交到Jcenter都要修改 +version = "1.4.6" //版本号,每次提交到Jcenter都要修改 def siteUrl = "https://github.com/AnyLifeZLB/ScrollTextView" // project homepage def gitUrl = "https://github.com/AnyLifeZLB/ScrollTextView.git" // project git group = "anylife.scrolltextview" diff --git a/ScrollTextviewLib/src/main/java/anylife/scrolltextview/ScrollTextView.java b/ScrollTextviewLib/src/main/java/anylife/scrolltextview/ScrollTextView.java index a477a5e..e64100c 100644 --- a/ScrollTextviewLib/src/main/java/anylife/scrolltextview/ScrollTextView.java +++ b/ScrollTextviewLib/src/main/java/anylife/scrolltextview/ScrollTextView.java @@ -1,6 +1,7 @@ package anylife.scrolltextview; import android.content.Context; +import android.content.res.ColorStateList; import android.content.res.TypedArray; import android.graphics.Canvas; import android.graphics.Color; @@ -8,6 +9,7 @@ import android.graphics.Paint.FontMetrics; import android.graphics.PixelFormat; import android.graphics.PorterDuff.Mode; +import android.support.annotation.ColorInt; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; @@ -48,6 +50,7 @@ public class ScrollTextView extends SurfaceView implements SurfaceHolder.Callbac private int speed = 1; // scroll-speed private String text = ""; // scroll text private float textSize = 15f; // text size + private int textColor; private int needScrollTimes = Integer.MAX_VALUE; //scroll times @@ -88,7 +91,7 @@ public ScrollTextView(Context context, AttributeSet attrs) { isHorizontal = arr.getBoolean(R.styleable.ScrollTextView_isHorizontal, isHorizontal); speed = arr.getInteger(R.styleable.ScrollTextView_speed, speed); text = arr.getString(R.styleable.ScrollTextView_text); - int textColor = arr.getColor(R.styleable.ScrollTextView_text_color, Color.BLACK); + textColor = arr.getColor(R.styleable.ScrollTextView_text_color, Color.BLACK); textSize = arr.getDimension(R.styleable.ScrollTextView_text_size, textSize); needScrollTimes = arr.getInteger(R.styleable.ScrollTextView_times, Integer.MAX_VALUE); isScrollForever = arr.getBoolean(R.styleable.ScrollTextView_isScrollForever, true); @@ -217,14 +220,24 @@ public void setHorizontal(boolean horizontal) { */ public void setText(String newText) { isSetNewText = true; - stopScroll = false; this.text = newText; - measureVarious(); } + + /** + * Set the text color + * + * @param color A color value in the form 0xAARRGGBB. + */ + public void setTextColor(@ColorInt int color) { + textColor =color; + paint.setColor(textColor); + } + + /** * set scroll speed * @@ -259,10 +272,6 @@ public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: pauseScroll = !pauseScroll; -// stopScroll = !stopScroll; -// if (!stopScroll && needScrollTimes == 0) { -// needScrollTimes = Integer.MAX_VALUE; -// } break; } return true; diff --git a/app/build.gradle b/app/build.gradle index 86d3ea1..a5426d5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 26 + compileSdkVersion 28 defaultConfig { applicationId "com.anylife.fragment.scrolltextview" - minSdkVersion 19 - targetSdkVersion 26 + minSdkVersion 16 + targetSdkVersion 28 versionCode 1 versionName "1.0" } @@ -30,6 +30,4 @@ dependencies { // implementation 'anylife.scrolltextview:ScrollTextviewLib:1.4.2' //when OK - - } diff --git a/app/src/main/java/com/anylife/fragment/scrolltextview/MainActivity.java b/app/src/main/java/com/anylife/fragment/scrolltextview/MainActivity.java index 96bfa5a..903b16e 100644 --- a/app/src/main/java/com/anylife/fragment/scrolltextview/MainActivity.java +++ b/app/src/main/java/com/anylife/fragment/scrolltextview/MainActivity.java @@ -40,11 +40,12 @@ protected void onCreate(Bundle savedInstanceState) { scrollText.setText("你打扰到我学习了1234567890AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"); imageView=findViewById(R.id.imageView); - imageView.setOnClickListener(this); //测试动态改变TextView - - - - + imageView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + scrollText.setTextColor(0xffaa3456); + } + }); //测试动态改变TextView