先来看看效果:
简单介绍一下,两个界面,以水平中线旋转180度,切换界面。
上代码:
布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="#a8a8a8">
<ViewFlipper
android:id="@+id/viewFlipper"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<include
android:id="@+id/one_layout1"
layout="@layout/activity_one" />
<include
android:id="@+id/two_layout2"
layout="@layout/activity_two"
android:visibility="gone" />
</ViewFlipper>
</RelativeLayout>
Activity关键代码:
private void changeOneOrTwo()
{
float halfWidth = viewFlipper.getWidth() / 2.0f;
float halfHeight = viewFlipper.getHeight() / 2.0f;
int duration = 300;
int depthz = 0;// viewFlipper.getWidth()/2;
if (oneOrTwo == 1)
{
oneOrTwo = 2;
Rotate3dAnimation in = new Rotate3dAnimation(-90, 0, halfWidth,
halfHeight, depthz, false);
in.setDuration(duration);
in.setStartOffset(duration);
viewFlipper.setInAnimation(in);
Rotate3dAnimation out = new Rotate3dAnimation(0, 90, halfWidth,
halfHeight, depthz, false);
out.setDuration(duration);
viewFlipper.setOutAnimation(out);
viewFlipper.showNext();
} else
{
oneOrTwo = 1;
one_layout1.setVisibility(View.VISIBLE);
two_layout2.setVisibility(View.GONE);
Rotate3dAnimation in = new Rotate3dAnimation(90, 0, halfWidth,
halfHeight, depthz, false);
in.setDuration(duration);
in.setStartOffset(duration);
viewFlipper.setInAnimation(in);
Rotate3dAnimation out = new Rotate3dAnimation(0, -90, halfWidth,
halfHeight, depthz, false);
out.setDuration(duration);
viewFlipper.setOutAnimation(out);
viewFlipper.showPrevious();
}
}
代码中还有两个动画类,项目代码已分享到github:
https://github.com/kk-java/MyViewFlipper
- 大小: 45.8 KB
分享到:
相关推荐
主要介绍了Android中利用viewflipper动画切换屏幕效果的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
分别用ViewFlipper和ViewPage实现界左右滑动界面切换前者不带个数显示,后者带个数显示!
Android使用ViewFlipper实现Switch。开关部分通过自定义控件继承ViewFlipper来实现,开关动画通过anim文件来实现。
Activity间的切换进入和出去的动画,界面间手指左右滑动进入与出去的动画,简单易懂。
android中的ViewFlipper实现左右切换源代码。UI设计。
ViewFlipper实现图片切换,适用于图片展示
android 利用ViewFlipper来实现滑动切换
ViewFlipper实现滑屏切换View
使用ViewFlipper控件以及anim动画文件实现屏幕切换效果。
Android ActivtiyGroup和ViewFlipper实现Activity滑屏切换,绝对好用!
利用ViewFlipper实现图片的轮播效果
利用viwflipper来将多个activity封装在一个view中,通过实现OnGestureListener接口的onTouchEvent()方法和onFling() 方法,即可通过手持滑动切换activity。
ViewFlipper加上动画效果实现数字的简单翻页效果
viewFlipper组件继承了ViewAnimator 它调用了addview(View v) 添加多个组件一旦向ViewFlipper中添加了多个组件之后viewFlipper可以使用动画控制多个组件之间的切换效果
使用TabHost与ViewFlipper结合实现滑动翻页效果,支持tab背景图片自动切换,最简化的代码
ViewFlipper
ViewFlipper,不妨把它看做一个容器吧,你可以把许多的View放在这个容器中,让它展示给用户,虽然它每次只展示一个view,我感觉它的用途更好是作为广告展示,比如类似购物网站那样的广告滚动展示。这个demo是一个...
如何设置ActivityGroup以管理多个Activity,使用GridView来展示选项卡的图标和文本,以及通过ViewFlipper实现视图之间的平滑切换。此外,还将探讨如何处理用户交互,如点击事件,以及如何优化性能和用户体验。适合...
历史最牛、绝对原创、代码简洁、功能强大,华丽的使用TabHost与ViewFlipper结合实现滑动翻页效果,支持tab背景图片自动切换.之前看到别人写的实现方法是重写TabHost,但是代码太繁琐。本程序虽然资源分高点儿,但...