Android 微光闪烁效果之更强Shimmer-android
实现Android Shimmer效果的解决方案不少,在前一篇中介绍了facebook自家的Android Shimmer效果实现(《Android Shimmer微光闪烁shimmer-android》文章链接地址:http://blog.csdn.net/zhangphil/article/details/49722913 ),本文介绍另外一种我个人觉得比facebook更好的一种实现效果:Shimmer-android(我个人建议使用这个开源库实现Android Shimmer效果,可定制效果更强)
Shimmer-android在github上的项目主页是:https://github.com/RomainPiel/Shimmer-android
Shimmer-android干脆在Android TextView,Button的基础上重新写了ShimmerTextView和ShimmerButton。如果只是需要将一段文字实现Shimmer效果,直接使用ShimmerTextView即可。
Shimmer-android使用和前一篇facebook的使用类似,先写一个布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#9e9e9e" >
<com.romainpiel.shimmer.ShimmerTextView
android:id="@+id/shimmer_tv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center"
android:text="Zhang Phil @ CSDN"
android:textColor="#757575"
android:textSize="20sp" />
</RelativeLayout>
然后在Java代码中启动动画执行:
import android.app.Activity;
import android.os.Bundle;
import com.romainpiel.shimmer.Shimmer;
import com.romainpiel.shimmer.ShimmerTextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ShimmerTextView tv = (ShimmerTextView) findViewById(R.id.shimmer_tv);
Shimmer shimmer = new Shimmer();
shimmer.setDuration(2500);
shimmer.start(tv);
}
}
start执行,cancel停止。
运行结果如图(其实是连续的动画效果,我只截了一张):