Android View的滑动 动画
【scrollTo/scrollBy】
//控件内的文字会移动,但是控件本身不会移动,而且移动到控件之外之后,文字也就看不见了
if(v.equals(button2)){
button2.scrollTo(5, 5); //View内的文字会向左移动5,向上移动5,绝对坐标,只会移动一次
Toast.makeText(this, "用户名", Toast.LENGTH_SHORT).show();
}else if(v.equals(button3)){
button3.scrollBy(5, 5);//View内的文字会向左移动5,向上移动5,相对坐标,会移动无数次
Toast.makeText(this, "用",Toast.LENGTH_SHORT).show();
}
getX(),getY() //表示相对于手指点下去的那个View的左上角的x,y坐标
getRawX(),getRawY() //表示相对于屏幕左上角的坐标
【动画】
//补间动画//原先的位子不会被侵占
//可以移动整个控件A,可以通过fillAfter把控件停留在移动的终点
//但是焦点实际上还是在原先的地方,从其他地方往原先的地方A移动,(移动的控件A可以获得焦点的情况下)控件A就会从停留的地方回来
//(移动的控件A无法获得焦点的情况下)如果往原先的地方A移动,控件A会停留在移动的终点
Animation animation2= AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slide_big_in_right);
button2.startAnimation(animation2);
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true">
<translate
android:fromXDelta="1920"
android:toXDelta="1000"
android:fromYDelta="0"
android:toYDelta="0"
android:duration="2000"
android:interpolator="@android:anim/decelerate_interpolator" /> //表示动画集合中所采用的插值器,插值器影响动画的速度,比如非匀速动画就需要插值器来控制播放速度
//decelerate_interpolator 动画越来越慢
</set>
//补间动画情况和上面一样 //其实焦点还是在原先的地方
TranslateAnimation animation = new TranslateAnimation(0, 300,0, 0);
animation.setDuration(2000);//设置动画持续时间
animation.setRepeatCount(2);//设置重复次数
animation.setFillAfter(true);
animation.setRepeatMode(Animation.REVERSE);//设置反方向执行
button4.startAnimation(animation);
//属性动画//原先的位子不会被侵占
//整个控件会向右移动100,会停留在终点,焦点也在终点。在即使点击这个控件,它也还是在终点
ObjectAnimator.ofFloat(button2, "translationX", 0,100)
.setDuration(100).start();
【改变布局参数】
//整个控件会移动,焦点也会移动,会停留在最后。原先的位置会被侵占,
RelativeLayout.LayoutParams mParams=(RelativeLayout.LayoutParams) button3.getLayoutParams();
mParams.width=100;
mParams.height=130;
mParams.setMargins(50, 50, 0, 0);
button3.setLayoutParams(mParams);
button3.setPadding(20, 0, 0, 0);
Android View的滑动 动画的更多相关文章
- Android View的滑动
Android View的滑动 文章目录 Android View的滑动 一.实现移动 1.1 layout() 1.2 设置位置偏移量 1.3 改变布局参数 1.4 动画 1.5 ScrollTo以 ...
- Android:View颤抖的动画效果代码
public void propertyValuesHolderDown(final View view) { PropertyValuesHolder pvhX = PropertyValuesHo ...
- Android滑动动画ViewFlipper和视频播放VideoView的使用
Android滑动动画,可以用ViewPager或者ViewFlipper实现. ViewPager自带触摸滑动功能,结合Fragment使用很好,来自补充组件android-support-v4.j ...
- Android开源中国客户端学习 (自定义View)左右滑动控件ScrollLayout
左右滑动的控件我们使用的也是非常多了,但是基本上都是使用的viewpager 等 android基础的控件,那么我们有么有考虑过查看他的源码进行定制呢?当然,如果你自我感觉非常好的话可以自己定制一个, ...
- Android的Activity屏幕切换滑动动画
Activity的切换效果使用的是Android的动画效果,Android的动画在官方有相关资料:http://developer.android.com/guide/topics/graphics/ ...
- android仿微信红包动画、Kotlin综合应用、Xposed模块、炫酷下拉视觉、UC浏览器滑动动画等源码
Android精选源码 仿微信打开红包旋转动画 使用Kotlin编写的Android应用,内容你想象不到 Android手机上的免Root Android系统日志Viewer 一个能让微信 Mater ...
- Android View体系(二)实现View滑动的六种方法
1.View的滑动简介 View的滑动是Android实现自定义控件的基础,同时在开发中我们也难免会遇到View的滑动的处理.其实不管是那种滑动的方式基本思想都是类似的:当触摸事件传到View时,系统 ...
- 浅谈Android View滑动和弹性滑动
引言 View的滑动这一块在实际开发中是非常重要的,无论是优秀的用户体验还是自定义控件都是需要对这一块了解的,我们今天来谈一下View的滑动. View的滑动 View滑动功能主要可以使用3种方式来实 ...
- 【朝花夕拾】Android自定义View篇之(十一)View的滑动,弹性滑动与自定义PagerView
前言 由于手机屏幕尺寸有限,但是又经常需要在屏幕中显示大量的内容,这就使得必须有部分内容显示,部分内容隐藏.这就需要用一个Android中很重要的概念——滑动.滑动,顾名思义就是view从一个地方移动 ...
随机推荐
- win7,Mindmanager2012使用模板时弹出Runtime error R6025解决方法
Mindjet.MindManager2012.v10.0在应用个别模板时提示"参数错误",然后自动关闭. 解决办法: 如果是win7系统,可以进入C:\Users\(用户名)\A ...
- 如何利用mono把.net windows service程序迁移到linux上
How to migrate a .NET Windows Service application to Linux using mono? 写在最前:之所以用要把windows程序迁移到Linux上 ...
- 《深入理解Java虚拟机》调优案例分析与实战
上节学习回顾 在上一节当中,主要学习了Sun JDK的一些命令行和可视化性能监控工具的具体使用,但性能分析的重点还是在解决问题的思路上面,没有好的思路,再好的工具也无补于事. 本节学习重点 在书本上本 ...
- 揭秘Windows10 UWP中的httpclient接口[2]
阅读目录: 概述 如何选择 System.Net.Http Windows.Web.Http HTTP的常用功能 修改http头部 设置超时 使用身份验证凭据 使用客户端证书 cookie处理 概述 ...
- C#开源实现MJPEG流传输
本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 许久以前写了篇文章<基于.NET打造IP智能网络视频监控系统>,记录和介绍了自己几年来积 ...
- 简单事件机制Java实现
一个很简单方便的事件处理方法. 使用效果 事件发布者: //定义事件 public static EventTrans<String> AuthFailed = new EventTran ...
- Html5 直接插入排序
直接插入排序算法(Straight Insertion Sort),是排序算法中简单的一种算法,基本思想如下: 将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表.即:先将序列的第 ...
- libuv源码分析前言
Libevent,libev,libuv三者的区别所在? libevent提供了全套解决方案(事件库,非阻塞IO库,http库,DNS客户端),然而libevent使用全局变量,导致非线程安全.它的w ...
- 通过easyui tab添加的子页面JS脚本必须放在body才生效
通过easyui tab添加的子页面JS脚本必须放在body才生效 可通过Chrome查看元素时,head标签是否含有你自己写的JS代码
- jQuery之常用且重要方法梳理(siblings,nextAll,end,wrap,apply,call,each)-(二)
1.siblings() siblings() 获得匹配集合中每个元素的同胞,通过选择器进行筛选是可选的. <body> <div><span>Hello</ ...