`
xyz_lmn
  • 浏览: 65369 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Android UI开发第八篇——ViewFlipper 左右滑动效果

 
阅读更多
怎么实现Android主页面的左右拖动效果。其实实现起来很简单,就是使用ViewFlipper来将您要来回拖动的View装在一起,然后与GestureDetector手势识别类来联动,确定要显示哪个View,加上一点点动画效果即可。

java code:
public class TestFlip extends Activity implements OnGestureListener {

private ViewFlipper flipper;

private GestureDetector detector;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

detector = new GestureDetector(this);
flipper = (ViewFlipper) this.findViewById(R.id.ViewFlipper01);
flipper.addView(addView(R.layout.layout1));
flipper.addView(addView(R.layout.layout2));
flipper.addView(addView(R.layout.layout3));
flipper.addView(addView(R.layout.layout4));
}

private View addView(int layout) {
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(layout, null);
return view;
}

@Override
public boolean onTouchEvent(MotionEvent event) {
return this.detector.onTouchEvent(event);
}

@Override
public boolean onDown(MotionEvent e) {
// TODO Auto-generated method stub
return false;
}

@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
if (e1.getX() - e2.getX() > 120) {
this.flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_in));
this.flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_left_out));
this.flipper.showNext();
return true;
} else if (e1.getX() - e2.getX() < -120) {
this.flipper.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.push_right_in));
this.flipper.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.push_right_out));
this.flipper.showPrevious();
return true;
}
return false;
}

@Override
public void onLongPress(MotionEvent e) {
// TODO Auto-generated method stub

}

@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
// TODO Auto-generated method stub
return false;
}

@Override
public void onShowPress(MotionEvent e) {
// TODO Auto-generated method stub

}

@Override
public boolean onSingleTapUp(MotionEvent e) {
// TODO Auto-generated method stub
return false;
}
}

xml code:
<?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"
>
<ViewFlipper android:id="@+id/ViewFlipper01"
android:layout_width="fill_parent" android:layout_height="fill_parent">
</ViewFlipper>
</LinearLayout>
/**
* @author 张兴业
* 邮箱:xy-zhang@163.com
* qq:363302850
*
*/
分享到:
评论

相关推荐

    UI开发第八篇——ViewFlipper 左右滑动效果

    本篇将深入探讨如何利用ViewFlipper组件和GestureDetector类实现左右滑动切换视图的效果,这在主页面或多个内容区域展示的场景中非常常见。 ViewFlipper是Android提供的一个布局容器,它可以方便地在多个子视图之间...

    安卓Android源码——ViewFlipper水平滑动.rar

    【标题】"安卓Android源码——ViewFlipper水平滑动.rar"揭示了关于Android平台下ViewFlipper组件的实现细节,特别关注其水平滑动功能。ViewFlipper是Android SDK提供的一种视图容器,用于在多个视图之间进行平滑切换...

    安卓Android源码——ViewFlipper水平滑动.zip

    "安卓Android源码——ViewFlipper水平滑动"这个标题指出我们将探讨的是Android操作系统中的一个特定组件,即ViewFlipper,并且关注的是它的水平滑动功能。ViewFlipper是Android SDK提供的一种布局管理器,它允许用户...

    安卓Andriod源码——ViewFlipper水平滑动.zip

    "安卓Andriod源码——ViewFlipper水平滑动.zip" 这个标题揭示了我们要探讨的核心内容:一个关于Android平台的源代码项目,它专注于实现ViewFlipper组件的水平滑动功能。ViewFlipper是Android SDK中的一个视图容器,...

    安卓Android源码——ViewFlipper1.rar

    在Android开发中,ViewFlipper是一个非常实用的控件,用于在多个视图之间进行切换,常用于实现轮播图、动画效果等场景。在这个"安卓Android源码——ViewFlipper1.rar"压缩包中,我们可以期待看到一个关于ViewFlipper...

    Android基础控件——ViewFlipper的使用,仿淘宝头条垂直广告条

    在Android开发中,ViewFlipper是一个非常实用的控件,它允许我们轻松地在多个视图之间进行切换,常用于实现动画效果,如轮播图、广告条等。本篇文章将详细讲解如何利用ViewFlipper来创建一个类似淘宝头条垂直广告条...

    Android使用ViewFlipper实现左右滑动效果面

    在Android开发中,ViewFlipper是一个非常有用的布局组件,它允许开发者轻松地在多个视图之间切换,通常用于实现翻页、轮播图或者动画效果。在这个场景中,我们将探讨如何利用ViewFlipper来实现左右滑动的效果。 ...

    安卓Android源码——ViewFlipper2.rar

    在Android开发中,`ViewFlipper`是一个非常实用的视图切换组件,它允许开发者轻松地在多个子视图之间进行动态切换,常用于实现轮播图、动画过渡等效果。`ViewFlipper2.rar`可能包含了一份针对`ViewFlipper`组件的...

    最简单的ViewFlipper实现图片跟随手势滑动

    在Android开发中,ViewFlipper是一个非常有用的控件,它允许开发者轻松地在多个视图之间切换,通常用于实现类似轮播图或者卡片翻页的效果。在这个“最简单的ViewFlipper实现图片跟随手势滑动”的教程中,我们将深入...

    Android 滑动效果ViewFlipper

    **Android滑动效果ViewFlipper详解** 在Android开发中,我们常常需要实现各种动画效果来提升用户体验,其中滑动切换视图是一种常见的交互方式。`ViewFlipper`是Android SDK提供的一种布局容器,它允许我们在多个子...

    android viewflipper 图片滑动demo

    在Android开发中,ViewFlipper是一个非常有用的布局组件,它允许开发者轻松地在多个视图之间切换,常用于实现滑动浏览效果,如教程、引导页或者轮播图等。本示例“android viewflipper 图片滑动demo”正是这样一个...

    listview嵌套gridview,viewflipper左右滑动图片

    viewflipper左右滑动图片效果 。从服务器取出图片,实现图片缓存 。 我也是消耗过多的积分组合了代码,希望有帮助需要的, 注意: 跑起 需要服务器 将我的资源放在 tomcat里 , 修改 ...

    Android使用ViewFlipper做页面切换,与手势滑动切换的使用

    Android系统自带有一个多页面管理的控件:ViewFlipper. 它可以简单实现子页面的切换,,, 它只需使用addView方法添加几个View,每个View对应的是一个页面,即可完成对于多页面的管理,,, 在android上实现手势...

    Android高级应用源码-ViewFlipper水平滑动.zip

    【标签】虽然没有提供具体的标签,但我们可以推断出这个项目可能涉及到以下关键词:Android开发、UI设计、动画、ViewFlipper、水平滑动、用户交互。 **详细知识点:** 1. **Android开发基础**:了解Android应用的...

    ViewFlipper水平滑动.zip

    【标题】"ViewFlipper水平滑动.zip" 提供了一个关于Android UI组件ViewFlipper的实例,主要展示了如何实现水平滑动效果。ViewFlipper是Android SDK中的一个视图容器,它允许用户在多个视图之间进行动画切换,通常...

    Android ViewFlipper水平滑动Demo.zip

    在Android开发中,ViewFlipper是一个非常实用的控件,它允许开发者轻松地在多个视图之间进行切换,常用于实现动画效果,如轮播图、广告栏等。本示例"Android ViewFlipper水平滑动Demo"着重展示了如何利用ViewFlipper...

    使用ViewFlipper实现图片左右滑动效果

    ViewFlipper,不妨把它看做一个容器吧,你可以把许多的View放在这个容器中,让它展示给...这个demo是一个手动滑动屏幕查看图片的粒子,共有10张图片,左右滑动可以查看图片,效果不是很好。其实用ViewPager会更好些。

    Android应用源码之ViewFlipper水平滑动.zip

    在Android应用开发中,ViewFlipper是一个非常实用的组件,它允许开发者实现视图间的平滑切换,通常用于创建类似轮播图或者翻页效果的界面。这个源码示例是专门为安卓学习者设计的,旨在帮助他们理解和掌握如何在...

    android中使用ViewFlipper实现滑动翻页示例

    在Android开发中,ViewFlipper是一个非常有用的布局控件,它允许我们轻松地实现滑动翻页的效果。这个示例将向我们展示如何在应用程序中使用ViewFlipper来创建一个动态翻页界面,使得用户可以通过手势或编程方式切换...

Global site tag (gtag.js) - Google Analytics