这个例子实现了在一个activity不同的View之间的切换

activity代码

package com.liudan.activity;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.widget.ViewFlipper;

public class PopupWindowDemo extends Activity {
 ViewFlipper viewFlipper;
 float startX;

@Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  viewFlipper = (ViewFlipper) this.findViewById(R.id.viewFlipper);
 }

/**
  * 处理用户滑屏事件
  */
 @Override
 public boolean onTouchEvent(MotionEvent event) {
  switch (event.getAction()) {
  case MotionEvent.ACTION_DOWN:
   startX = event.getX();
   break;

case MotionEvent.ACTION_UP:
   if (event.getX() > startX) {
    viewFlipper.setInAnimation(this, R.anim.in_lefttoright);// 定义下一页进来时的动画
    viewFlipper.setOutAnimation(this, R.anim.out_lefttoright);// 定义当前页出去的动画
    viewFlipper.showNext();// 显示下一页
   } else if (event.getX() < startX) {
    viewFlipper.setInAnimation(this, R.anim.in_righttoleft);
    viewFlipper.setOutAnimation(this, R.anim.out_righttoleft);
    viewFlipper.showPrevious();// 显示上一页
   }
   break;
  }
  return super.onTouchEvent(event);
 }

}

xml 代码

1.main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 xmlns:android="http://schemas.android.com/apk/res/android">
 <ViewFlipper
  android:id="@+id/viewFlipper"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
 
  <!-- 这是当前页第一页 -->
  <LinearLayout
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content">
   <TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="这是第一页"/>
  </LinearLayout>
 
  <!-- 这是第二页 -->
  <LinearLayout
   android:orientation="vertical"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:background="#FF00FF00">
   <TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="这是第二页"/>
  </LinearLayout>
 </ViewFlipper>
</LinearLayout>

2.in_lefttoright.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
 <!-- 定义从左向右滑动时,后一页进入的动画 -->
 <translate
 android:fromXDelta="-100%"
 android:toXDelta="0"
 android:duration="3000"/>
</set>

3.in_righttoleft.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
 <!-- 定义从右向左滑动时,后一页进入的动画 -->
 <translate
 android:fromXDelta="100%"
 android:toXDelta="0"
 android:duration="3000"/>
</set>

4.out_lefttoright.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
 <!-- 定义从左向右滑动时,当前的页面出去的动画 -->
 <translate
 android:fromXDelta="0"
 android:toXDelta="100%"
 android:duration="3000"/>
</set>

5.out_righttoleft.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
 <!-- 定义从右向左滑动时,当前页出去的动画 -->
 <translate
 android:fromXDelta="0"
 android:toXDelta="-100%"
 android:duration="3000"/>
</set>

viewFlipper的基本实现相关推荐

  1. viewflipper动画切换屏幕

    整个项目的 package com.example.viewflipper;import android.R.integer; import android.app.Activity; import ...

  2. ViewFlipper的使用

    ViewFlipper显示文本,点击按钮,显示下一个文本 package com.example.androidtest;import android.os.Bundle; import androi ...

  3. Android成长日记-使用ViewFlipper实现屏幕切换动画效果

    (一) ViewFlipper介绍 Android系统自带的一个多页面管理控件,它可以实现子界面的自动切换 (二) 为ViewFlipper加入View 1. 静态导入:在Layout布局文件中直接导 ...

  4. 【移动开发】Android中三种超实用的滑屏方式汇总(ViewPager、ViewFlipper、ViewFlow)...

    现如今主流的Android应用中,都少不了左右滑动滚屏这项功能,(貌似现在好多人使用智能机都习惯性的有事没事的左右滑屏,也不知道在干什么...嘿嘿),由于前段时间项目的需要,所以也对其研究了一下,总的 ...

  5. Android ViewFlipper滑动屏幕切换

    最近看到ViewFlipper和Animation在一起的用法,感觉很好,我就自己写了一下,感觉灰常好用,效果比gallery的滚动查看图片好用多了,这个也是实现滚动屏幕切换图片,但是用户体验要好很多 ...

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

    在我的博客中,上次是使用ViewPager实现左右滑动的效果的,请看文章:Android使用ViewPager实现左右滑动效果 . 这次我来使用ViewFlipper实现这种效果,好了,先看看效果吧: ...

  7. Android中实现滑动翻页—使用ViewFlipper

    有一些场景,我们需要向用户展示一系列的页面.比如我们正在开发一个看漫画的应用,可能就需要向用户展示一张一张的漫画图片,用户使用手指滑动屏幕,可以在前一幅漫画和后一幅漫画之间切换.这个时候ViewFli ...

  8. Android中三种超实用的滑屏方式汇总(ViewPager、ViewFlipper、ViewFlow)

    现如今主流的Android应用中,都少不了左右滑动滚屏这项功能,(貌似现在好多人使用智能机都习惯性的有事没事的左右滑屏,也不知道在干什么...嘿嘿),由于前段时间项目的需要,所以也对其研究了一下,总的 ...

  9. android view flipper,安卓控件——ViewFlipper

    今天在逛博客的时候又学习到一个新控件,就是ViewFlipper,老规矩,还是通过一个demo来学习,下面先附上效果图: ViewFlipper效果图 根据效果图,说下利用该控件实现的几个简单功能点: ...

  10. android viewflipper图片轮播,使用ViewFlipper实现图片轮播

    public class MainActivity extends AppCompatActivity { private ViewFlipper flipper; //背景图片int[] id pr ...

最新文章

  1. python 词频统计,分词笔记
  2. 初识jvm-1.Java类的加载机制
  3. 【解题报告】Leecode 700. 二叉搜索树中的搜索——Leecode每日一题
  4. git的使用1[转]
  5. [html] 怎样使用iframe刷新父级页面?
  6. 不安全网络中的数据安全传输利器——GnuPG(上)
  7. qTip Style
  8. 中缀表达式转后缀表达式规则
  9. elk日志分析系统_ELK 日志分析系统
  10. spring boot中自定义Filter过滤器
  11. 学习用HTML做新闻摘要
  12. Ubuntu设置屏幕分辨率及屏幕翻转
  13. v-for和v-show一起使用
  14. html中js计算百钱百鸡,JS经典案例之百钱百鸡
  15. 文件包含之本地包含的利用
  16. pat a1096(因式分解)
  17. ext4 文件系统的特点、优缺点以及使用场景
  18. Simulink中Delay模块的使用
  19. sql server2005完全卸载与重装
  20. 分别已知两直线上的两点,求两直线交点

热门文章

  1. 全新版的TFN 光时域反射仪上线了,大家一块了解一下吧。
  2. 解决 sentinel 实时监控无数据问题
  3. iHerb中国这个app怎么样?iHerb中国邮政EMS与顺丰速运区别点在哪里?
  4. 什么是敏感型货物,被海关扣押之后如何处理?
  5. python 二维列表获取其中元素_Python中二维列表如何获取子区域元素的组成
  6. spring @Autowired用法
  7. [c++]CodeBlocks中去掉下划线的方法
  8. 思科交换机如何配置Trunk?
  9. linux下使用动态壁纸
  10. Android反模拟器的总结