ImageSwitcher 右向左滑动的实现方式
ImageSwitcher is;
...
is.setInAnimation(this, android.R.anim.slide_in_left);
is.setOutAnimation(this, android.R.anim.slide_out_right);
上面实现了从左向右滑动的效果,可是反过来,从右向左滑动怎么实现呢?
默认情况下 android.R.anim.slide_in_right 和 android.R.anim.slide_out_left是私有的,也就是说通过.属性是找不到的.
解决办法:slide_in_right和slide_out_left这两个xml都可以在sdk里找到的,修改后作为自己的资源调用就好了
platforms\android-10\data\res\anim\下找到下面两个xml文件.
slide_in_right
slide_out_left
最后放到项目 res->anim下面
imgSwitcher.setOnTouchListener(new OnTouchListener() { @Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub if (event.getAction() == MotionEvent.ACTION_DOWN) { downX = (int) event.getX(); // 取得按下时的坐标 Log.i("event.getX()", " downX " + downX);
return true;
} else if (event.getAction() == MotionEvent.ACTION_UP) { upX = (int) event.getX(); // 取得松开时的坐标 Log.i("event.getX()", " upX " + downX); // 从左拖到右,即看前一张
if (upX - downX > 100) { imgSwitcher.setInAnimation(AnimationUtils
.loadAnimation(firstActivity.this,
android.R.anim.slide_in_left));
imgSwitcher.setOutAnimation(AnimationUtils
.loadAnimation(firstActivity.this,
android.R.anim.slide_out_right));
curIndex--; if (curIndex < 0) {
curIndex = 5;
} imgSwitcher.setImageResource(IMAGE_LIST[curIndex]);
firstActivity.this.switchTitle(curIndex); } else if (downX - upX > 100) { // 从右拖到左,即看后一张 imgSwitcher.setInAnimation(AnimationUtils
.loadAnimation(firstActivity.this,
R.anim.slide_out_left));
imgSwitcher.setOutAnimation(AnimationUtils
.loadAnimation(firstActivity.this,
R.anim.slide_in_right));
curIndex++;
if (curIndex > 5) {
curIndex = 0;
}
imgSwitcher.setImageResource(IMAGE_LIST[curIndex]);
firstActivity.this.switchTitle(curIndex);
}
return true;
}
return false;
}
});
ImageSwitcher 右向左滑动的实现方式的更多相关文章
- thiscall仅仅应用于“C++”成员函数(this指针存放于CX寄存器,参数从右到左压)
_stdcall是Pascal程序的缺省调用方式,通常用于Win32 Api中,函数采用从右到左的压栈方式,自己在退出时清空堆栈.VC将函数编译后会在函数名前面加上下划线前缀,在函数名后加上" ...
- 自定义UITableViewCell实现左滑动多菜单功能LeftSwipe
今天愚人节,小伙们,愚人节快乐! 实现一个小功能,滑动菜单,显示隐藏的功能菜单, 先上图: 这里尝试用了下使用三个方式来实现了这个功能: 1.使用自定义UI ...
- 一个Android上的以滑动揭示的方式显示并切换图片的View
SlideView是一个Android上的以滑动揭示的方式显示并切换图片的View,以视觉对比的方式把一套相似的图片展示出来. 示例 翻页图片揭示效果: 特性 设置一组(List<ImageIn ...
- [android]如何使LinearLayout布局从右向左水平排列,而不是从左向右排列
方法1: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:l ...
- css选择器选择顺序是从右往左的,为什么?
https://segmentfault.com/q/1010000000713509 为什么 CSS 选择器解析的时候是从右往左? CSS 的后代选择器本身就是一种在标准里面不那么推荐的方式. 首先 ...
- Android 4.2原生支持从右到左的文字排列格式
Android 4.1(Jelly Bean) 在TextView和EditText 元素里对“双向文字顺序”提供了有限的功能支持,允许应用程序在编辑和显示字符的时候,能够同时支持从左到右(LTR) ...
- ios 仿新浪微博 UINavigationController 向左滑动时显示上一个控制器的View.
仿新浪微博 UINavigationController 向左滑动时显示上一个控制器的View. 实现原理,UINavigationController 的 self.view显示时把当前显示的vie ...
- js移动端向左滑动出现删除按钮
最近在做移动端项目时,需要实现一个列表页面的每一项item向左滑动时出现相应的删除按钮,本来想着直接使用zepto的touch.js插件,因为之前实现相同的功能时用过这个插件,当时还挺好用的,直接使用 ...
- Ueditor增加文字竖排显示和从右向左输入(支持蒙古文和维吾尔文)
平时我们在ueditor中都是输入的中文,排版都是从左向右输入.但是当输入一些少数民民族言时,ueditor却不能正常显示. 例如蒙古文字,传统蒙文是竖排书写.如下图:传统蒙古文排文方式,<蒙古 ...
随机推荐
- Windows Server 2008 计划任务配置(任务计划程序)每分钟执行BAT
首先Windows Server 2008不同于其他服务器操作系统和Windows Server 2003有着很大的区别,计划任务的名称是“任务计划程序”不在控制面板里,而是在“管理工具”里. 由于服 ...
- iOS开发——真机调试证书—发布证书
(最近准备考试,空闲整理成博客……)
- Core Data(数据持久化)
Core Data可能是OS X和iOS中最容易被误解的框架之一了.为了帮助大家理解,我们将快速研究Core Data,来看一下它是关于什么的.为了正确使用Core Data, 有必要理解其概念.几乎 ...
- SpringMVC的文件上传
首先导入jar包 在springMVC里面配置文件上传,以及限定上传文件的大小 <bean id="multipartResolver" class="org.s ...
- fedora 20 install skype
http://www.if-not-true-then-false.com/2012/install-skype-on-fedora-centos-red-hat-rhel-scientific-li ...
- 高性能、高并发TCP服务器(多线程调用libevent)
from:http://blog.csdn.net/i_am_jojo/article/details/7587838 本文讲述的TCP服务器是模仿memcache中的TCP网络处理框架,其中是基于l ...
- ECMAScript位操作符
在ECMAScript中,有少数的几个操作符可以对二进制位进行直接操作,这几个操作符本身直接对二进制进行操作,所有它们的本身是非常效率的,学习这一段有助于以后的优化以及理解. ECMAScript中采 ...
- SQL Proc(存储过程)/tran(事物)
存储过程好比C#方法 1.事物写在过程里面,直接调用存储过程 1.1没有参数的过程 /*transaction事物,procedure存储过程*/ create proc CopyTable_1_10 ...
- jquery 多级无限分类
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- php练习5——简单的学生管理系统(隐藏控件的使用)
要求: 程序:gradeManage.html和gradeManage.php 结果 注意: 1.使用隐藏控件时,得在不同表单下,不能在同一个表单下: 2. ...