ViewFlipper手势滑动

最简单的ViewFlipper实现图片跟随手势滑动 NULL 博文链接:https://zhonglunshun.iteye.com/blog/1972245 立即下载

View切换的控件—ViewFlipper

除了这个ViewFlipper,我们还需要了解一下ViewAnimator。它主要是为其中的View切换提供动画效果。

还会用到几个方法:

setInAnimation:设置View进入屏幕时候使用的动画。该方法有两个重载方法,即可以直接传入Animation对象,也可以传入定义的Animation文件的resourceID。

setOutAnimation:设置View退出屏幕时候使用的动画。使用方法和setInAnimation方法一样。

showNext:调用该方法可以显示FrameLayout里面的下一个View。

showPrevious:调用该方法可以来显示FrameLayout里面的上一个View。

package com.example.viewfipper;

import android.os.Bundle;
import android.app.Activity;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.animation.AnimationUtils;
import android.widget.ViewFlipper;
public class MainActivity extends Activity implements OnGestureListener
{
private ViewFlipper viewflipper;
private GestureDetector detector;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		viewflipper=(ViewFlipper)findViewById(R.id.viewflipper);
		detector=new GestureDetector(this);
		View testView1=LayoutInflater.from(this).inflate(R.layout.test, null);
		View testView2=LayoutInflater.from(this).inflate(R.layout.test2,null);
           //将两个View添加到ViewFlipper中去
		viewflipper.addView(testView1);
		viewflipper.addView(testView2);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	@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) {
		// TODO Auto-generated method stub
		//向左滑动
		if(e1.getX()-e2.getX()>120)
		{//添加滑动时的动画,有两种方法,另一种见向右滑动
			viewflipper.setInAnimation(AnimationUtils.loadAnimation(MainActivity.this, R.anim.push_left_in));
			viewflipper.setOutAnimation(AnimationUtils.loadAnimation(MainActivity.this, R.anim.push_left_out));
			viewflipper.showNext();//显示下一个View
			return true;
		}
		if(e1.getX()-e2.getX()<-120)
		{
			viewflipper.setInAnimation(MainActivity.this,R.anim.push_right_in);
			viewflipper.setOutAnimation(MainActivity.this, R.anim.push_right_out);
			viewflipper.showPrevious();//显示前一个view
			return true;
		}
		return true;
	}

	@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;
	}
	@Override
	public boolean onTouchEvent(MotionEvent event) {
		// TODO Auto-generated method stub
		return this.detector.onTouchEvent(event);
	}
}
注意:一定要重写onTouchEvent()方法,不然无法实现


stata:stata软件教程(人大十八讲)(1) 第一章 stata入门 第一章 stata入门1.1 安装1.2 启用和退出1.3 打开和查看数据1.4 寻求帮助与网络资源1.5 命令示例1.6 几个环境设置1.7 复习与练习1.8 附录 注:教材为:Stata 统计分析教程 stata软件教程(人大十八讲) 中国人民大学出版社 陈传波 1.1 安装 1.2 启用和退出 1.3 打开和查看数据 1.4 寻求帮助与网络资源 1.5 命令示例 1.6 几个环境设置 1.7 复习与练习 1.8 附录 ... 阅读详情

相关推荐

c++通过自然语言处理技术分析语音信号音高

其中,缓冲区大小为2048,最小基频为80Hz,最大基频为1000Hz。通常情况下,音高在85Hz到255Hz之间,因此可以根据实际情况修改最小和最大基频值。C++中可以使用数字信号处理库或语音处理库,比如MATLAB、Praat、YIN算法等等来进行音高分析。对于语音信号的音高分析,可以使用基频提取技术。基频是指一个声音周期的重复率,也就是一个声音波形中最长的周期。通常情况下,人的声音基频范围是85Hz到255Hz。这段代码使用了YIN算法来计算语音信号的基频,得出的结果即为音高。

SYC20110120的博客 1728

ViewFlipper的使用

屏幕切换指的是在同一个Activity内屏幕见的切换,最长见的情况就是在一个FrameLayout内有多个页面,比如一个系统设置页面;一个个性化设置页面。 通过查看OPhone API文档可以发现,有个android.widget.ViewAnimator类继承至FrameLayout,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果。该类有如下几个和动...

点点滴滴 376

从SPICE到电磁场:非线性器件在CST场路协同仿真中的建模艺术

本文深入探讨了非线性器件在CST场路协同仿真中的建模技术,重点分析了SPICE模型与电磁场仿真的集成方法。通过对比线电流模型和面电流模型的优缺点,结合实际案例展示了二极管阵列在电磁散射调控中的应用,为工程师提供了优化仿真精度与效率的实用技巧。

pandas7gardener的博客 198

用ViewFlipper实现手势滑动

ViewFlipper也可以结合onTouchEvent实现手势滑动。 在MainActivity中重写onTouchEvent方法,可以响应各种屏幕事件。通过一个变量startX保存手势起始坐标,并与当前坐标比较,可以判断向左滑动还是向右滑动。 示例代码如下: @Override public boolean onTouchEvent(MotionEvent event) { sw

jyDave的博客 947

Livox MID360与Fast-LIO2的实战部署指南:从驱动安装到点云处理

本文提供Livox MID360激光雷达与Fast-LIO2激光惯性里程计从零开始的实战部署指南。详细介绍了Ubuntu系统下的驱动安装、网络配置、点云数据验证以及Fast-LIO2算法的编译、参数配置与联合启动流程,帮助开发者快速搭建移动机器人SLAM系统,并包含关键参数调优与常见故障排查方法。

java5的博客 1024

14、利用Helm和GitOps实现Kubernetes资源管理与CI/CD流程优化

本文介绍了如何结合Helm、GitOps和Terraform等工具,优化Kubernetes资源管理和CI/CD流程。内容涵盖了Helm提供程序的配置、GitOps的核心理念、CI/CD管道的构建与测试策略、GitHub源代码管理模型以及流程优化建议,旨在提升软件开发和部署的效率与质量。

y7z8a9的博客 155

ViewFlipper实现手势滑动

利用ViewFlipper可以实现图片的轮播,支持手势滑动的图片切换   在ViewFlipper中加入图片   1、静态导入     2、动态导入:addView()方法   ViewFlipper常用方法: 学习视频:http://www.imooc.com/video/2657

u013599426的专栏 1793

2024年数字IC秋招-大疆-数字芯片开发工程师-笔试题

笔试题型:选择题 + 简答题笔试平台:大疆创新(电脑监控)笔试时间:90min做题感受:知识面覆盖很广,很多题目不会做(1) 什么是功耗优化中的DVFS技术?(2)降低功耗的原理是什么?(3)一般工作流程是怎样的?(4)必须的硬件模块有哪些?

qq_42135020的博客 2666

Android三种左右滑动效果 手势识别

手势识别 1.onCreate中添加GestureDetector mGestureDetector; //监听手势事件 mGestureDetector = new GestureDetector(this, onGestureListener); 2.//实现处理事件 OnGestureListener onGestureListener = new OnGestureListen...

weixin_30885111的博客 210

管好 SAP Fiori Launchpad Content:技术目录、业务目录与 KPI 工具的完整治理思路

SAP Fiori Launchpad 作为企业级统一入口,需通过技术目录(源对象)和业务目录(引用编排)分层治理。技术目录由 Launchpad App Manager 维护,负责应用描述对象(Tile 和 Target Mapping)的创建与管理;业务目录由 Launchpad Content Manager 编排,通过引用技术目录对象实现灵活配置。分析型内容则通过 F2814 统一管理。这种分层设计支持应用复用,便于升级维护,是 SAP S/4HANA 项目中实现高效内容治理的关键。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 130

如何用matlab扫频法测考虑频率耦合的并网逆变器的序阻抗,如何实现?

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1193

动态手势滑动ViewFlipper实现

本文介绍了Android中ViewFlipper的两种使用方法:静态导入(通过XML布局直接添加子View)和动态导入(通过代码addView方法添加)。详细讲解了setInAnimation、showNext等常用方法,并提供了两个实现示例:1)静态导入实现图片轮播,通过设置切换间隔自动播放;2)动态导入实现支持手势滑动的ViewFlipper,通过GestureDetector监听手势实现左右滑动切换。文章包含完整的动画XML和Java代码实现,最后作者谦虚地表示欢迎指正,并鼓励读者点赞收藏。

sinat_57153473的博客 651

【AI智能体】基于Coze制作跨境电商客服助手工作流实战操作详解

基于Coze制作跨境电商客服助手工作流实战操作详解

congge 3463

ViewFlipper实现屏幕自动播放及手势滑动切换

【例1】实现自动播放 【步骤一】在res目录下新建文件夹anim,下面有四个文件,如下:     right_out.xml内容也类似。   【步骤二】在MainActivity.java文件中进行如下操作 定义全局变量   private ViewFlipper vf; private int[...

数据之道 1185

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

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

<br />Android系统自带有一个多页面管理的控件:ViewFlipper.<br />它可以简单实现子页面的切换,,,<br />它只需使用addView方法添加几个View,每个View对应的是一个页面,即可完成对于多页面的管理,,,<br /> <br />在android上实现手势的识别也比较简单,可以实现OnTouchListener和OnGuestureListener接口,<br />然后在OnTouch函数中注册GestureDetector来判别手势动作,<br /> <br />参

Yao.GUET 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

手势GestureDetector与ViewFlipper结合使用,实现滑动翻页

MainActivity.java package practise.lxm.hello; import android.app.Activity; import android.os.Bundle; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.animati

lxm_start的专栏 736

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

5.14支持手势滑动的ViewFlipper

(1)支持手势滑动的ViewFlipper: 重写onTouchEvent方法 private float startX; @Override public boolean onTouchEvent(MotionEvent event) { // TODO Auto-generated method stub switch (event.getActi

sbf2011的专栏 463

ViewFlipper如何实现Button,ListView的手势滑动?

r如何实现Button,ListView的手势滑动?

94

Android开发之ViewFlipper应用(二)之手势滑动相册

呵呵,最近一直在忙linux,把ViewFlipper应用(二)都落下一边了,先来回顾下http://blog.youkuaiyun.com/ch_984326013/article/details/6666302(一)我们完成之后交给大家的两点疑问: (1)、该项目,我们实现的是单击按钮

ch_984326013的专栏 4778

使用ViewFlipper实现图片自动切换,并支持手势滑动切换

首先来看看项目结构目录: 不好意思,我右开始使用AndroidStudio了 ,开始用不习惯,就特意去搭建了eclipse的开发环境,整了好久,后来发现eclipse还是不如AndroidStudio啊,虽然快捷键那些东西啊用不太习惯,但是相信慢慢都会好的。 首先我们直接看代码吧: 先是activity_main.xml <LinearLayout xmlns

夏天龙的博客 1460

ViewFlipper结合手势OnGestureListener制作的滑动切换效果

文章分类:移动开发 先要了解ViewFlipper,详细见: http://gundumw100.iteye.com/admin/blogs/896840 OnGestureListener和OnDoubleTapListener接口定义:  Java代码   public interface OnGestureListener {                ...

wjlgryx的专栏 128

Android程序:使用ViewFlipper实现屏幕切换动画及手势滑动切换功能

package com.example.viewflipperdemo;import android.app.Activity; import android.os.Bundle; import android.view.MotionEvent; import android.widget.ImageView; import android.widget.ViewFlipper;public cla

记点小笔记 874

安卓作业----慕课移动应用开发作业12之利用ViewFlipper+GestureDetector事件监听,实现手势滑动查看图片

本博客运用GridView、ViewFlipper、ImageView等进行界面布局,使用自定义适配器显示图片。通过GestureDetector事件监听,可手势滑动查看图片,并设置图片左右滑动出、入的效果。 同时这也是中国大学慕课移动终端应用开发的网课作业12,我会持续更新我的作业,如果有需要关注一下吧 说明 1.图片资源来自于阿里巴巴矢量图标库 2.部分内容参考了此篇博客 3.注意版本和And...

baidu_41860619的博客 1643
上一篇: libgdx游戏开发之hello world
下一篇: ViewPager的滑动切换
iloster
博客等级 码龄14年 46粉丝 85原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值