ViewFlipper
[功能]
1. ViewFlipper 可以包含多个View 且View之间的切换有Animation 比如:渐变效果
[代码]
1. 创建包含ViewFlipper 的main.xml 还包含2个Button 用于各个View切换 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/previousButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Previous"
/>
<Button
android:id="@+id/nextButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Next"
/>
</LinearLayout>
<ViewFlipper
android:id="@+id/flipper"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
>
</ViewFlipper>
</LinearLayout>
2. 设定 Animation 效果
flipper = (ViewFlipper) findViewById(R.id.flipper);
flipper.setInAnimation(AnimationUtils.loadAnimation(this,
android.R.anim.fade_in));
flipper.setOutAnimation(AnimationUtils.loadAnimation(this,
android.R.anim.fade_out));
3. 在 ViewFlipper 里面增加各种View
flipper.addView(addTextByText("HelloAndroid"));
flipper.addView(addImageById(R.drawable.beijing_003_mb5ucom));
flipper.addView(addTextByText("eoe.Android"));
flipper.addView(addImageById(R.drawable.beijing_004_mb5ucom));
flipper.addView(addTextByText("Gryphone"));
ublic View addTextByText(String text){
TextView tv = new TextView(this);
tv.setText(text);
tv.setGravity(1);
return tv;
}
public View addImageById(int id){
ImageView iv = new ImageView(this);
iv.setImageResource(id);
return iv;
}
4. View 切换
* 下一个View
flipper.showNext();
* 上一个View
flipper.showPrevious();