activity_main.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<code><LinearLayout xmlns:android=</code><code>"http://schemas.android.com/apk/res/android"</code>
<code> </code><code>xmlns:tools=</code><code>"http://schemas.android.com/tools"</code>
<code> </code><code>android:layout_width=</code><code>"match_parent"</code>
<code> </code><code>android:layout_height=</code><code>"match_parent"</code>
<code> </code><code>android:orientation=</code><code>"vertical"</code>
<code> </code><code>></code>
<code> </code>
<code> </code><code><ViewFlipper </code>
<code> </code><code>android:id=</code><code>"@+id/viewFlipper_1"</code>
<code> </code><code>android:layout_width=</code><code>"match_parent"</code>
<code> </code><code>android:layout_height=</code><code>"match_parent"</code>
<code> </code><code>></code>
<code> </code>
<code> </code><code><LinearLayout </code>
<code> </code><code>android:id=</code><code>"@+id/linearLayout_1_1"</code>
<code> </code><code>android:layout_width=</code><code>"fill_parent"</code>
<code> </code><code>android:layout_height=</code><code>"fill_parent"</code>
<code> </code><code><ImageView </code>
<code> </code><code>android:id=</code><code>"@+id/imageView_1_1"</code>
<code> </code><code>android:layout_width=</code><code>"wrap_content"</code>
<code> </code><code>android:layout_height=</code><code>"wrap_content"</code>
<code> </code><code>android:src=</code><code>"@drawable/kobe0"</code>
<code> </code><code>/></code>
<code> </code><code></LinearLayout></code>
<code> </code><code><LinearLayout</code>
<code> </code><code>android:id=</code><code>"@+id/linearayout_2_2"</code>
<code> </code><code><ImageView </code>
<code> </code><code>android:id=</code><code>"@+id/imageView_2_2"</code>
<code> </code><code>android:src=</code><code>"@drawable/kobe1"</code>
<code> </code><code><LinearLayout</code>
<code> </code><code>android:id=</code><code>"@+id/linearayout_3_3"</code>
<code> </code><code>android:id=</code><code>"@+id/imageView_3_3"</code>
<code> </code><code>android:src=</code><code>"@drawable/kobe3"</code>
<code> </code><code>android:id=</code><code>"@+id/linearayout_4_4"</code>
<code> </code><code>android:id=</code><code>"@+id/imageView_4_4"</code>
<code> </code><code>android:src=</code><code>"@drawable/kobe4"</code>
<code> </code><code></ViewFlipper></code>
<code> </code>
<code></LinearLayout></code>
res/anim/in_leftright.xml
<code><?xml version=</code><code>"1.0"</code> <code>encoding=</code><code>"utf-8"</code><code>?></code>
<code><set xmlns:android=</code><code>"http://schemas.android.com/apk/res/android"</code>
<code> </code><code>></code>
<code> </code><code><translate</code>
<code> </code><code>android:duration=</code><code>"3000"</code>
<code> </code><code>android:fromXDelta=</code><code>"-100%p"</code>
<code> </code><code>android:toXDelta=</code><code>"0"</code>
<code> </code><code></translate></code>
<code></set></code>
res/anim/in_rightleft.xml
<code> </code><code>android:fromXDelta=</code><code>"100%p"</code>
res/anim/out_leftright.xml
<code> </code><code>android:fromXDelta=</code><code>"0"</code>
<code> </code><code>android:toXDelta=</code><code>"100%p"</code>
res/anim/out_rightleft.xml
<code> </code><code>android:toXDelta=</code><code>"-100%p"</code>
MainActivity
<code>package</code> <code>com.example.viewflipper;</code>
<code>import</code> <code>android.R.integer;</code>
<code>import</code> <code>android.app.Activity;</code>
<code>import</code> <code>android.os.Bundle;</code>
<code>import</code> <code>android.view.Menu;</code>
<code>import</code> <code>android.view.MenuItem;</code>
<code>import</code> <code>android.view.MotionEvent;</code>
<code>import</code> <code>android.widget.ViewFlipper;</code>
<code>public</code> <code>class</code> <code>MainActivity </code><code>extends</code> <code>Activity {</code>
<code> </code><code>private</code> <code>ViewFlipper viewFilpper;</code>
<code> </code><code>@Override</code>
<code> </code><code>protected</code> <code>void</code> <code>onCreate(Bundle savedInstanceState) {</code>
<code> </code><code>super</code><code>.onCreate(savedInstanceState);</code>
<code> </code><code>setContentView(R.layout.activity_main);</code>
<code> </code><code>viewFilpper=(ViewFlipper) findViewById(R.id.viewFlipper_1);</code>
<code> </code><code>}</code>
<code> </code><code>//重寫觸屏事件監聽方法</code>
<code> </code><code>float</code> <code>startx=</code><code>0</code><code>.0F;</code>
<code> </code><code>float</code> <code>endx=</code><code>0</code><code>.0F;</code>
<code> </code><code>public</code> <code>boolean</code> <code>onTouchEvent(MotionEvent event) {</code>
<code> </code><code>// TODO Auto-generated method stub</code>
<code> </code><code>int</code> <code>action=event.getAction();</code>
<code> </code><code>switch</code> <code>(action) {</code>
<code> </code><code>case</code> <code>MotionEvent.ACTION_DOWN:</code>
<code> </code><code>startx=event.getX();</code>
<code> </code><code>break</code><code>;</code>
<code> </code><code>case</code> <code>MotionEvent.ACTION_UP:</code>
<code> </code><code>//向右滑動</code>
<code> </code><code>if</code><code>(event.getX()-startx></code><code>10</code><code>){</code>
<code> </code><code>viewFilpper.setInAnimation(</code><code>this</code><code>, R.anim.in_leftright);</code>
<code> </code><code>viewFilpper.setOutAnimation(</code><code>this</code><code>, R.anim.out_leftright);</code>
<code> </code><code>viewFilpper.showNext();</code>
<code> </code><code>}</code><code>else</code> <code>if</code><code>(startx-event.getX()></code><code>10</code><code>){</code>
<code> </code><code>viewFilpper.setInAnimation(</code><code>this</code><code>, R.anim.in_rightleft);</code>
<code> </code><code>viewFilpper.setOutAnimation(</code><code>this</code><code>, R.anim.out_rightleft);</code>
<code> </code><code>viewFilpper.showPrevious();</code>
<code> </code><code>}</code>
<code> </code>
<code> </code><code>default</code><code>:</code>
<code> </code><code>}</code>
<code> </code><code>return</code> <code>super</code><code>.onTouchEvent(event);</code>
<code>}</code>
<a href="http://s2.51cto.com/wyfs02/M00/8B/94/wKiom1hRVeHiJjNTABC_NhHUwJU342.gif-wh_500x0-wm_3-wmp_4-s_90220252.gif" target="_blank"></a>
本文轉自 matengbing 51CTO部落格,原文連結:http://blog.51cto.com/matengbing/1882840