android自带的加载动画都不怎么好看,在这里介绍一种自定义加载动画的方法
原始图片:
编写动画progressbar.xml,
<?xml version="1.0" encoding="utf-8"?> <animated-rotate android:drawable="@drawable/publicloading" android:pivotX="50.0%" android:pivotY="50.0%" xmlns:android="http://schemas.android.com/apk/res/android" />
还可以在style中配置显示样式:
<style name="progresStyle" parent="android:style/Widget.ProgressBar"> <item name="android:indeterminateDrawable">@drawable/progressbar</item> <item name="android:minWidth">50dp</item> <item name="android:maxWidth">50dp</item> <item name="android:minHeight">50dp</item> <item name="android:maxHeight">50dp</item> </style>
最后将样式配置到ProgressBar中;
<ProgressBar android:id="@+id/progress" android:layout_width="45dip" android:layout_height="45dip" android:layout_gravity="center_horizontal" style="@style/progressStyle"/>
就这样一个简单的加载动画完成。
针对于ListView 和GridView 有一个方法
setEmptyView(progressView);
可以在没有数据的时候显示指定的进度加载动画,数据加载完成时可以隐藏掉。