From a065667920eae8f6dfd410ce9faf6d00597a61ca Mon Sep 17 00:00:00 2001 From: niorgai Date: Wed, 10 Oct 2018 17:36:59 +0800 Subject: [PATCH] Add TimeCountDownStrategy & demo --- .../yy/mobile/rollingtext/MainActivity.java | 17 ++++++++++++ app/src/main/res/layout/activity_main.xml | 26 ++++++++++++++++++- .../rollingtextview/strategy/Strategy.kt | 9 +++++++ .../strategy/TimeCountDownStrategy.kt | 21 +++++++++++++++ 4 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 rollingtextview/src/main/java/com/yy/mobile/rollingtextview/strategy/TimeCountDownStrategy.kt diff --git a/app/src/main/java/com/yy/mobile/rollingtext/MainActivity.java b/app/src/main/java/com/yy/mobile/rollingtext/MainActivity.java index 079ce95..f645072 100644 --- a/app/src/main/java/com/yy/mobile/rollingtext/MainActivity.java +++ b/app/src/main/java/com/yy/mobile/rollingtext/MainActivity.java @@ -18,6 +18,7 @@ import java.util.Arrays; import java.util.Date; import java.util.List; +import java.util.Locale; public class MainActivity extends AppCompatActivity { @@ -68,6 +69,22 @@ public void run() { } }, 2000L); + final RollingTextView countDown = findViewById(R.id.rollingTextView4); + countDown.addCharOrder(CharOrder.Number); + countDown.addCharOrder(":"); + countDown.setAnimationDuration(500L); + countDown.setAnimationInterpolator(new AccelerateDecelerateInterpolator()); + countDown.setCharStrategy(Strategy.TimeCountDownAnimation(Direction.SCROLL_DOWN)); + handler.post(new Runnable() { + @Override + public void run() { + Date date = new Date(); + date.setTime(System.currentTimeMillis()); + countDown.setText(new SimpleDateFormat("HH:mm:ss", Locale.getDefault()).format(date)); + handler.postDelayed(this, 1000L); + } + }); + final RollingTextView stickyText = findViewById(R.id.stickyText); stickyText.setAnimationDuration(3000L); stickyText.addCharOrder("0123456789abcdef"); diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 24481c8..512f674 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -103,11 +103,35 @@ android:text="CarryBit" android:textSize="14sp" /> + + + + ?): Pair, Direction> { + + return if (sourceChar == targetChar) { + listOf(targetChar) to direction + + } else listOf(sourceChar, targetChar) to direction + } +} \ No newline at end of file