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

Android 使用ViewFlipper实现左右手势切换页面的demo

 
阅读更多
废话少说,直接上代码吧
main.xml:
<?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:layout_height="wrap_content"  
        android:id="@+id/viewFlipper1" android:layout_width="fill_parent"  
        >  
        <LinearLayout android:layout_width="wrap_content"  
            android:layout_height="wrap_content">  
            <TextView android:layout_width="wrap_content"  
                android:layout_height="wrap_content" android:text="第一屏" />  
        </LinearLayout>  
        <LinearLayout android:layout_width="wrap_content"  
            android:layout_height="wrap_content">  
            <TextView android:layout_width="wrap_content"  
                android:layout_height="wrap_content" android:text="第二屏" />  
        </LinearLayout>  
    </ViewFlipper>  
</LinearLayout>


TestViewFlipper.java:
package com.iaiai.test;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.MotionEvent;
import android.widget.ViewFlipper;

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

	private static final String TAG = "TestViewFlipper";
	private ViewFlipper viewFlipper;
	private GestureDetector detector;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		detector = new GestureDetector(this);
		viewFlipper = (ViewFlipper) findViewById(R.id.viewFlipper1);
	}

	@Override
	public boolean onTouchEvent(MotionEvent event) {
		Log.v(TAG, "touched");
		return this.detector.onTouchEvent(event);
	}

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

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

	}

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

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

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

	}

	public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
			float velocityY) {
		Log.i(TAG, "fling...");
		if (e1.getX() > e2.getX()) {
			viewFlipper.showNext();
		} else if (e1.getX() < e2.getX()) {
			viewFlipper.showPrevious();
		} else {
			return false;
		}
		return true;
	}

}
分享到:
评论

相关推荐

    用ViewFlipper+GestureDetector实现的滑屏demo

    通过这个简单的滑屏demo,我们可以学习到如何在Android应用中利用`ViewFlipper`和`GestureDetector`实现平滑的滑动效果,这对于构建类似轮播图、相册应用等具有多页面滑动场景的项目非常有用。同时,这个例子也体现...

    android viewflipper 图片滑动demo

    本示例“android viewflipper 图片滑动demo”正是这样一个应用场景,用于展示如何用ViewFlipper实现在应用首次启动时的图片引导页面。 首先,我们需要了解ViewFlipper的基本概念。ViewFlipper是ViewGroup的一个子类...

    ViewFlipperDemo.zip

    总结一下,"ViewFlipperDemo.zip"应该包含了一个Android应用,该应用演示了如何使用ViewFlipper组件进行视图切换,并可能涉及到了视图复用的概念。通过研究这个示例,开发者能够掌握如何在Android项目中灵活地使用...

    图片左右循环切换Demo

    本教程将基于提供的"图片左右循环切换Demo"来详细介绍如何自定义一个继承自`ViewFlipper`的控件来实现这一功能。 `ViewFlipper`是Android SDK提供的一种布局容器,它允许我们在两个或更多的视图之间进行切换,通常...

    android ViewFlipper的使用

    综上所述,`ViewFlipper`是Android开发中一个非常实用的工具,通过它可以轻松实现视图之间的平滑切换,尤其是对于图片滑动等动态展示场景。通过合理的配置和自定义动画,可以创造出丰富的用户体验。在实际项目中,...

    ViewFlipper简单实现横屏滑动

    在Android开发中,ViewFlipper是一个非常实用的控件,用于在多个视图之间进行平滑切换,常用于实现类似轮播图或者横向滑动页面的效果。本教程将详细介绍如何利用ViewFlipper来实现横屏滑动,以及屏幕局部滑动的实现...

    ViewFlipper

    通过查看`Demo.ViewFlipperDemo`项目,你可以学习如何在实际应用中使用ViewFlipper,包括如何配置自动翻转、自定义动画、响应用户输入以及动态管理视图。这对于开发涉及多页面滑动效果的Android应用非常有帮助,例如...

    Android GridView + ViewFlipper布局界面,模仿“机锋市场-IT计算机-毕业设计.zip

    - ViewFlipper可以配合SensorManager和GestureDetector实现手势切换子视图。 - 使用AsyncTask或者Loader加载数据,确保数据的异步加载,提高用户体验。 这个毕业设计项目不仅提供了学习Android基础组件的机会,还...

    android开发demo集合

    33、GestureDetector + ViewFlipper实现翻页效果 34、GestureLiberay 自定义手势 35、GestureLiberay 通过自定义的手势实现用户操作 36、TextToSpeech 语音朗读 37、ContentProvider、ContentResolver 应用之间...

    Android滑动菜单特效实现,仿人人客户端侧滑效果demo程序源码

    在Android中,实现滑动菜单通常有两种主要方法:使用第三方库,如`SlidingPaneLayout`或`Android Design Support Library`中的`NavigationView`,或者自定义布局和手势检测来实现。本示例代码可能是通过自定义实现来...

    android 翻页 demo 别人的

    在这个项目中,开发者可能会使用到Android的ViewFlipper或者ViewPager组件来实现页面间的切换。ViewFlipper允许开发者在多个视图之间进行简单的自动或手动切换,而ViewPager则提供了更复杂的滑动手势支持和页面间...

    ViewFlipper的使用

    通过`ViewFlipperDemo`项目的学习,开发者可以了解`ViewFlipper`的基本使用以及如何在实际项目中实现各种翻转效果。该项目可能包含了实现不同翻转动画、手动翻转、自动翻转等功能的代码示例,是学习`ViewFlipper`的...

    android 滚动demo

    Android还提供了`ViewFlipper`和`ViewPager`这两个内置组件,它们内置了滚动逻辑,可以方便地实现页面间的切换和滚动浏览。`ViewFlipper`适合简单的左右切换,而`ViewPager`则适用于更复杂的页面滑动场景,如在水平...

    Android程序研发源码Android 书籍翻页效果的demo.zip

    - 为了响应用户的翻页手势,如左右滑动,项目可能会使用`GestureDetector`和`ScaleGestureDetector`。这些类帮助识别和处理触摸事件,从而触发翻页动画。 5. **Custom Layouts(自定义布局)**: - 由于系统默认...

    滑屏Demo(随手指拖动)

    对于本Demo来说,很可能是基于ViewPager进行定制,因为ViewPager可以轻松地实现左右滑动切换页面,并且支持自定义动画和手势检测。下面将详细解释这些知识点: 1. **ViewPager**:ViewPager是Android SDK中的一个...

    图片轮播的一个demo

    `ViewFlipper`是Android SDK提供的一种用于在多个视图间进行动画切换的容器,它能轻松实现自动轮播和手动手势切换的效果。 **1. ViewFlipper介绍** `ViewFlipper`继承自`ViewGroup`,可以包含多个子视图(例如...

    实现listview实现用户操作交互

    本示例"android-movies-demo"由作者dlew提供,展示了如何在ListView中实现用户操作交互,特别是通过手势来触发不同的功能,比如向左滑动查看电影评分详情,向右滑动查看上映日期。以下是关于这一实现的详细知识点: ...

Global site tag (gtag.js) - Google Analytics