`
iaiai
  • 浏览: 2204940 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android ViewFlipper 的使用

 
阅读更多
运行效果:


package com.iaiai;

import android.app.Activity;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.GestureDetector.SimpleOnGestureListener;
import android.view.MotionEvent;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ViewFlipper;

/**
 * 
 * <p>
 * Title: MainActivity.java
 * </p>
 * <p>
 * E-Mail: 176291935@qq.com
 * </p>
 * <p>
 * QQ: 176291935
 * </p>
 * <p>
 * Http: iaiai.iteye.com
 * </p>
 * <p>
 * Create time: 2011-10-24
 * </p>
 * 
 * @author 丸子
 * @version 0.0.1
 */
public class MainActivity extends Activity {

	private ViewFlipper viewFlipper;
	private GestureDetector gestureDetector;
	private Animation slideLeftIn;  
    private Animation slideLeftOut;  
    private Animation slideRightIn;  
    private Animation slideRightOut;

	private class GestureDetectorListener extends SimpleOnGestureListener {
		private static final int SWIPE_MIN_DISTANCE = 120;
		private static final int SWIPE_MAX_OFF_PATH = 250;
		private static final int SWIPE_THRESHOLD_VELOCITY = 200;
		
		@Override
		public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
				float velocityY) {
			try {
				if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH)
					return false;
				if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE
						&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
					viewFlipper.setInAnimation(slideLeftIn);  
                    viewFlipper.setOutAnimation(slideLeftOut);
					viewFlipper.showNext();
				} else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE
						&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
					viewFlipper.setInAnimation(slideRightIn);  
                    viewFlipper.setOutAnimation(slideRightOut);
					viewFlipper.showPrevious();
				}
			} catch (Exception e) {
				// nothing
			}
			return false;
		}
	}

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		
		slideLeftIn = AnimationUtils.loadAnimation(this, R.anim.slide_left_in);
        slideLeftOut = AnimationUtils.loadAnimation(this, R.anim.slide_left_out);
        slideRightIn = AnimationUtils.loadAnimation(this, R.anim.slide_right_in);
        slideRightOut = AnimationUtils.loadAnimation(this, R.anim.slide_right_out);

		viewFlipper = (ViewFlipper) findViewById(R.id.viewFlipper);

		gestureDetector = new GestureDetector(new GestureDetectorListener());
	}

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


  • 大小: 9.4 KB
分享到:
评论
2 楼 鱼骨头123 2011-11-07  
鱼骨头123 写道
你好,你的教程很好,还有个问题想问一下:
<LinearLayout>
  <TextView></TextView>  //把此行删掉才能运行成功,不删掉运行时模拟器会有程序崩溃
  <ViewFlipper>
     <LinearLayout></LinearLayout>
  <ViewFlipper>
     


那我怎么实现部分页面滑动切换呢?
1 楼 鱼骨头123 2011-11-07  
你好,你的教程很好,还有个问题想问一下:
<LinearLayout>
  <TextView></TextView>  //把此行删掉才能运行成功,不删掉运行时模拟器会有程序崩溃
  <ViewFlipper>
     <LinearLayout></LinearLayout>
  <ViewFlipper>
     

相关推荐

    android ViewFlipper使用示例(注册引导页)

    android ViewFlipper使用示例(注册引导页)。做设定好的流程类的填写注册(就例如用户注册,帮助手册,引导页面也可以)。我的博客地址:http://blog.csdn.net/qq_16064871。

    android viewflipper 图片滑动demo

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

    Android ViewFlipper Animation 使用

    本篇文章将详细探讨如何在Android应用程序中使用ViewFlipper以及如何实现动画效果。 首先,我们需要了解ViewFlipper的基本概念。ViewFlipper是LinearLayout的子类,它可以包含多个子视图,并在需要时显示其中一个。...

    android ViewFlipper

    在Android开发中,`ViewFlipper`是一个非常实用的视图切换组件,它允许开发者轻松地在多个子视图之间进行动画切换。本项目提供了一个简单的`ViewFlipper`实现,便于初学者理解和掌握其用法。下面我们将深入探讨`...

    android viewflipper手势拖动效果(An-Beer工作室)

    【Android ViewFlipper 手势拖动效果详解】 在 Android 应用开发中,ViewFlipper 是一个非常有用的布局组件,它可以实现多个视图(View)之间的切换,并且支持手势滑动切换效果,使得用户界面更加生动和交互性更强...

    Android ViewFlipper实现页面的滑动切换

    下面将详细探讨如何在Android应用中使用ViewFlipper来实现页面的滑动切换。 首先,我们需要了解ViewFlipper的基本结构。一个ViewFlipper可以包含多个子视图,如ImageView、TextView或自定义布局。在初始化时,...

    Android ViewFlipper的简单使用

    本文将详细介绍如何在Android项目中使用ViewFlipper,包括基本的布局设置、动态添加视图以及添加切换动画。 首先,我们来看一下ViewFlipper的基本使用。与ViewPager不同,ViewFlipper不需要依赖任何适配器,它可以...

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

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

    Android 滑动效果ViewFlipper

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

    android ViewFlipper的使用

    在Android开发中,`ViewFlipper` 是一个非常实用的视图切换组件,它允许开发者在多个视图之间进行平滑的动画切换。这个小demo展示了如何有效地利用`ViewFlipper`来创建一个图片滑动的效果。下面我们将深入探讨`...

    Android viewFlipper学习使用.zip

    Android viewFlipper学习使用针对viewFlipper设计,ViewFilpper 是Android官方提供的一个View容器类,继承于ViewAnimator类,用于实现页面切换,也可以设定时间间隔,让它自动播放。 又ViewAnimator继承至于...

    Android ViewFlipper简单用法解析

    Android ViewFlipper是一种用于在多个视图之间进行切换的组件,它可以轻松地在布局中实现动画效果。在本文中,我们将深入探讨ViewFlipper的基本用法,并与ViewPager进行对比,以便更好地理解其特点和应用场景。 ...

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

    下面是一个基本的ViewFlipper使用示例: ```xml &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" ...

    Android ViewFlipper水平滑动Demo.zip

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

    Android使用ViewFlipper实现Switch动画特效。

    对于ViewFlipper的Switch动画,我们可以使用视图动画来实现。 在`res/anim`目录下,创建两个XML文件,分别定义开关动画的开启和关闭效果。例如,可以创建`slide_in_left.xml`和`slide_out_right.xml`,用于表示视图...

    Android ViewFlipper翻转视图使用详解

    Android ViewFlipper 翻转视图使用详解 Android ViewFlipper 是 Android 系统自带的一个多页面管理控件,可以自动播放。它和 ViewPager 有所不同,ViewPager 继承自 ViewGroup,是一页一页的,可以带动画效果,可以...

    Android ViewFlipper左右自动滑屏 源码

    在Android开发中,ViewFlipper是一个非常有用的布局控件,它可以轻松实现多个视图之间的切换,比如我们在很多应用中看到的广告轮播效果。本文将深入讲解如何利用ViewFlipper实现左右自动滑屏功能,并结合源码分析其...

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

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

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

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

Global site tag (gtag.js) - Google Analytics