第一種:AnimationDrawable實現幀動畫
private ImageView loading;loading = (ImageView)findViewById(R.id.welcomeLoading);@Overridepublic void onWindowFocusChanged(boolean hasFocus){ loading.setBackgroundResource(R.drawable.animatior_list); AnimationDrawable ad = (AnimationDrawable)loading.getBackground(); ad.start(); super.onWindowFocusChanged(hasFocus);}
上面的animatior_list.xml如下:
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"> android:oneshot="false"> <item android:drawable="@drawable/spinner_small_01_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_02_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_03_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_04_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_05_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_06_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_07_black" android:duration="200" /> <item android:drawable="@drawable/spinner_small_08_black" android:duration="200" /></animation-list>
第二種:ProgressBar實現
<ProgressBar android:id="@+id/goLoad" android:layout_height="wrap_content" android:layout_width="wrap_content"android:indeterminateDrawable="@drawable/load_progressbar"/>
load_progressbar.xml如下:
<?xml version="1.0" encoding="utf-8"?><rotate xmlns:android="http://schemas.android.com/apk/res/android"android:pivotX="50%" android:pivotY="50%" android:fromDegrees="0"android:toDegrees="360"><shape android:shape="ring" android:innerRadiusRatio="3"android:thicknessRatio="8" android:useLevel="false"><gradient android:type="sweep" android:useLevel="false"android:startColor="#000000" android:centerColor="#394D63"android:centerY="0.50" android:endColor="#6F9BC9" /></shape></rotate>
或者
<ProgressBar android:id="@+id/pb_download" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@style/circle_progress" /><style name="circle_progress" parent="@android:style/Widget.ProgressBar"> <item name="android:indeterminateDrawable">@drawable/ic_progress</item></style><?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item><rotate android:drawable="@drawable/ic_progress_normal"android:fromDegrees="-315.0" android:toDegrees="0.0" android:pivotX="50.0%"android:pivotY="50.0%" /> </item></layer-list>