rosenpin/fading-text-view
rosenpin/fading-text-view has 1,717 GitHub stars and 217 forks. GitHot measured -3 stars in 24 hours. Last checked 2026-11-07 03:09 UTC. Last push 2023-12-29.
A TextView that changes its content automatically every few seconds
Measured star growth
- in 24h
- -3
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalFadingTextView
A TextView that changes its content automatically every few seconds
Usage
Download
FadingTextView is available on JitPack
Step 1. Add the JitPack repository to your root build.gradle
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Step 2. Add the dependency
dependencies {
implementation 'com.github.rosenpin:fading-text-view:3.3'
}
Texts
First, you need to create a string-array in your values folder like so:
<string-array name="examples">
<item>Hello</item>
<item>Fading TextView</item>
</string-array>
Then in your layout
<com.tomer.fadingtextview.FadingTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:texts="@array/examples" />
Timeout
You can set the amount of time that each text is visible by using the timeout attribute and by specifying the length of time in milliseconds. Like so:
app:timeout="500"
<com.tomer.fadingtextview.FadingTextView
android:id="@+id/fadingTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:timeout="500"
app:texts="@array/examples" />
Updating the view dynamically - Kotlin
To set the text dynamically, you can use
val texts = arrayOf("text1", "text2", "text3")
val fadingTextView = findViewById<FadingTextView>(R.id.fadingTextView)
fadingTextView.setTexts(texts) // You can use an array resource or a string array as the parameter
//fadingTextView.setTexts(R.array.examples)
To set the timeout between text changes you can use:
//For text change once every hour
fadingTextView.setTimeout(60.minutes)
//For text change once every half a minute
fadingTextView.setTimeout(0.5.minutes)
//For text change every 10 seconds
fadingTextView.setTimeout(10.seconds)
//For text change every 500 milliseconds (0.5 seconds)
fadingTextView.setTimeout(500.milliseconds)
Or you can shuffle texts that you set
fadingTextView.shuffle()
Updating the view dynamically - JAVA
To set the text dynamically, you can use
String[] texts = {"text1","text2","text3"};
FadingTextView FTV = (FadingTextView) findViewById(R.id.fadingTextView);
FTV.setTexts(texts); //You can use an array resource or a string array as the parameter
To set the timeout between text changes you can use:
//For text change once every hour
FTV.setTimeout(60, MINUTES);
//For text change once every half a minute
FTV.setTimeout(0.5, MINUTES);
//For text change every 10 seconds
FTV.setTimeout(10, SECONDS);
//For text change every 500 milliseconds (0.5 seconds)
FTV.setTimeout(500, MILLISECONDS);
Shuffle
You can randomize the order of the strings using the shuffle method
Note: you will need to run the shuffle method after each time you update the view
Example:
FTV.setTexts(texts);
FTV.shuffle();
Full Documentation
Click me for the full documentation
License
Copyright (c) Tomer Rosenfeld 2016-2017
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Explore related projects
ytdl-org/youtube-dl
Command-line program to download videos from YouTube.com and other video sites
141,474 starsexcalidraw/excalidraw
Virtual whiteboard for sketching hand-drawn like diagrams
135,243 starsgodotengine/godot
Godot Engine – Multi-platform 2D and 3D game engine
119,656 starsmrdoob/three.js
JavaScript 3D Library.
117,745 stars