Text Animation From Left To Right Like Shine In Android
I don't know what type of animation it called, but I want to implement it as shown below. I saw that animation in iOS. As you can see that, sentence slide to cancel will animate f
Solution 1:
Solution 2:
Here is another IOS like slide text effect,
Solution 3:
Got solution by using Spannable
Following is Thread class which continuously run with interval of 100 ms.
class MyThread extends Thread {
//used for stopping thread
boolean flag;
//init flag to true so that method run continuously
public MyThread() {
flag = true;
}
//set flag false, if want to stop this thread
public void setFlag(boolean flag) {
this.flag = flag;
}
@Override
public void run() {
super.run();
while (flag) {
try {
Thread.sleep(intervalMiliSeconds);
runOnUiThread(new Runnable() {
@Override
public void run() {
Spannable spn = new SpannableString(txtView
.getText().toString());
spn.setSpan(new ForegroundColorSpan(Color.WHITE),
startPosition, endPosition,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
txtView.setText(spn);
startPosition++;
endPosition++;
endPosition %= (lengthOfString + charGaps);
startPosition %= lengthOfString;
if (startPosition == 0) {
endPosition = charGaps;
startPosition = 0;
}
if (endPosition > lengthOfString) {
endPosition = lengthOfString;
}
Log.d("Home", "Start : " + startPosition + " End : " + endPosition);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
To use above code, use following implementation.
TextView txtView = (TextView) findViewById(R.id.txtView);
int charGaps = 3;
int startPosition = 0;
int endPosition = charGaps;
int lengthOfString = txtView.getText().length();
MyThread thread = new MyThread();
thread.start();
Output
Still better answers will be more appreciated.. :)
Solution 4:
I think you are talking about Shimmer Effect. Facebook made library for that. It will help you to show glow effect from left to right with many more options.
You can see full documentation there. Shimmer Library
Post a Comment for "Text Animation From Left To Right Like Shine In Android"