ViewSwitcher 加载时显示动画

先上代码,布局文件

  1 <?xml version="1.0" encoding="utf-8"?>
  2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3     android:id="@+id/kxx_login_layout"
  4     android:layout_width="match_parent"
  5     android:layout_height="match_parent"
  6     android:focusable="true"
  7     android:focusableInTouchMode="true"
  8     android:orientation="vertical" >
  9 
 10     <RelativeLayout
 11         android:id="@+id/page_toprelative"
 12         android:layout_width="match_parent"
 13         android:layout_height="wrap_content"
 14         android:background="@drawable/head_bg1" >
 15 
 16         <TextView
 17             android:id="@+id/page_title"
 18             android:layout_width="wrap_content"
 19             android:layout_height="wrap_content"
 20             android:layout_centerInParent="true"
 21             android:text="@string/login_dialog_login"
 22             android:textAppearance="?android:attr/textAppearanceMedium"
 23             android:textColor="@android:color/white" />
 24 
 25         <Button
 26             android:id="@+id/kxx_login_zhuce"
 27             android:layout_width="wrap_content"
 28             android:layout_height="wrap_content"
 29             android:layout_alignParentRight="true"
 30             android:layout_centerVertical="true"
 31             android:layout_marginRight="10dp"
 32             android:background="@drawable/btn_background"
 33             android:text="@string/login_dialog_reg"
 34             android:textColor="@color/white" />
 35 
 36 
 37         <ImageView
 38             android:id="@+id/kxx_login_iv_back"
 39             android:layout_width="wrap_content"
 40             android:layout_height="wrap_content"
 41             android:layout_alignParentLeft="true"
 42             android:layout_centerVertical="true"
 43             android:layout_marginLeft="15dp"
 44             android:scaleType="fitXY"
 45             android:src="@drawable/img_back" />
 46 
 47     </RelativeLayout>
 48 
 49     <ViewSwitcher
 50         android:id="@+id/logindialog_view_switcher"
 51         android:layout_width="fill_parent"
 52         android:layout_height="match_parent" >
 53 
 54         <LinearLayout
 55             android:layout_width="match_parent"
 56             android:layout_height="match_parent"
 57             android:background="@drawable/login_page_background_down"
 58             android:orientation="vertical" >
 59 
 60             <LinearLayout
 61                 android:id="@+id/layout"
 62                 android:layout_width="match_parent"
 63                 android:layout_height="wrap_content"
 64                 android:layout_marginLeft="60dp"
 65                 android:layout_marginRight="50dp"
 66                 android:layout_marginTop="50dp"
 67                 android:background="@drawable/login_page_background_up"
 68                 android:orientation="vertical" >
 69 
 70              
149 
150                     <RelativeLayout
151                         android:layout_width="200dp"
152                         android:layout_height="wrap_content"
153                         android:layout_gravity="center_horizontal"
154                         android:layout_marginLeft="10dp"
155                         android:layout_marginRight="10dp" >
156 
157                         <CheckBox
158                             android:id="@+id/kxx_login_cb_remmberme"
159                             android:layout_width="wrap_content"
160                             android:layout_height="25dp"
161                             android:layout_marginLeft="30dp"
162                             android:button="@drawable/login_checkbox_selector"
163                             android:checked="true"
164                             android:paddingLeft="28dip"
165                             android:text="@string/login_mima_remmberme"
166                             android:textSize="10sp" />
167 
168                         <TextView
169                             android:id="@+id/kxx_login_tv_forget"
170                             android:layout_width="wrap_content"
171                             android:layout_height="wrap_content"
172                             android:layout_alignParentRight="true"
173                             android:layout_centerVertical="true"
174                             android:layout_marginRight="25dp"
175                             android:text="你大爷"
176                             android:textSize="10dp" />
177                     </RelativeLayout>
178                 </LinearLayout>
179 
180                 <ImageButton
181                     android:id="@+id/kxx_login_btn_login"
182                     android:layout_width="wrap_content"
183                     android:layout_height="wrap_content"
184                     android:layout_gravity="center_horizontal"
185                     android:background="@drawable/login_page_btn_login"
186                     android:text="@string/login_dialog_login" />
187             </LinearLayout>
194         </LinearLayout>
195 
196         <View
197             android:id="@+id/login_loading"
198             android:layout_width="135.0dip"
199             android:layout_height="135.0dip"
200             android:layout_gravity="center"
201             android:background="@anim/login_loading" />
202     </ViewSwitcher>
203 
204 </LinearLayout>

login_loading文件代码如下:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:oneshot="false" >//false表示循环
 4 
 5     <item android:duration="100">//100毫秒
 6         <layer-list>
 7             <item android:drawable="@drawable/login_loading_00"/>//帧图片,显示的图片
 8         </layer-list>
 9     </item>
10     <item android:duration="100">
11         <layer-list>
12             <item android:drawable="@drawable/login_loading_01"/>
13         </layer-list>
14     </item>
15     <item android:duration="100">
16         <layer-list>
17             <item android:drawable="@drawable/login_loading_02"/>
18         </layer-list>
19     </item>
20     <item android:duration="100">
21         <layer-list>
22             <item android:drawable="@drawable/login_loading_03"/>
23         </layer-list>
24     </item>
25     <item android:duration="100">
26         <layer-list>
27             <item android:drawable="@drawable/login_loading_04"/>
28         </layer-list>
29     </item>
30     <item android:duration="100">
31         <layer-list>
32             <item android:drawable="@drawable/login_loading_05"/>
33         </layer-list>
34     </item>
35     <item android:duration="100">
36         <layer-list>
37             <item android:drawable="@drawable/login_loading_06"/>
38         </layer-list>
39     </item>
40     <item android:duration="100">
41         <layer-list>
42             <item android:drawable="@drawable/login_loading_07"/>
43         </layer-list>
44     </item>
45     <item android:duration="100">
46         <layer-list>
47             <item android:drawable="@drawable/login_loading_08"/>
48         </layer-list>
49     </item>
50     <item android:duration="100">
51         <layer-list>
52             <item android:drawable="@drawable/login_loading_09"/>
53         </layer-list>
54     </item>
55 
56 </animation-list>
ViewSwitcher使用前须实例化对象
mViewSwitcher = (ViewSwitcher) findViewById(R.id.logindialog_view_switcher);
在加载时,需要显示动画的时候mViewSwitcher.showNext();
加载完数据,需要关闭动画的时候mViewSwitcher.showPrevious();

posted @ 2014-03-27 18:42  寡蛋  阅读(297)  评论(0)    收藏  举报