【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的滑动 动画的更多相关文章

  1. Android View的滑动

    Android View的滑动 文章目录 Android View的滑动 一.实现移动 1.1 layout() 1.2 设置位置偏移量 1.3 改变布局参数 1.4 动画 1.5 ScrollTo以 ...

  2. Android:View颤抖的动画效果代码

    public void propertyValuesHolderDown(final View view) { PropertyValuesHolder pvhX = PropertyValuesHo ...

  3. Android滑动动画ViewFlipper和视频播放VideoView的使用

    Android滑动动画,可以用ViewPager或者ViewFlipper实现. ViewPager自带触摸滑动功能,结合Fragment使用很好,来自补充组件android-support-v4.j ...

  4. Android开源中国客户端学习 (自定义View)左右滑动控件ScrollLayout

    左右滑动的控件我们使用的也是非常多了,但是基本上都是使用的viewpager 等 android基础的控件,那么我们有么有考虑过查看他的源码进行定制呢?当然,如果你自我感觉非常好的话可以自己定制一个, ...

  5. Android的Activity屏幕切换滑动动画

    Activity的切换效果使用的是Android的动画效果,Android的动画在官方有相关资料:http://developer.android.com/guide/topics/graphics/ ...

  6. android仿微信红包动画、Kotlin综合应用、Xposed模块、炫酷下拉视觉、UC浏览器滑动动画等源码

    Android精选源码 仿微信打开红包旋转动画 使用Kotlin编写的Android应用,内容你想象不到 Android手机上的免Root Android系统日志Viewer 一个能让微信 Mater ...

  7. Android View体系(二)实现View滑动的六种方法

    1.View的滑动简介 View的滑动是Android实现自定义控件的基础,同时在开发中我们也难免会遇到View的滑动的处理.其实不管是那种滑动的方式基本思想都是类似的:当触摸事件传到View时,系统 ...

  8. 浅谈Android View滑动和弹性滑动

    引言 View的滑动这一块在实际开发中是非常重要的,无论是优秀的用户体验还是自定义控件都是需要对这一块了解的,我们今天来谈一下View的滑动. View的滑动 View滑动功能主要可以使用3种方式来实 ...

  9. 【朝花夕拾】Android自定义View篇之(十一)View的滑动,弹性滑动与自定义PagerView

    前言 由于手机屏幕尺寸有限,但是又经常需要在屏幕中显示大量的内容,这就使得必须有部分内容显示,部分内容隐藏.这就需要用一个Android中很重要的概念——滑动.滑动,顾名思义就是view从一个地方移动 ...

随机推荐

  1. win7,M​i​n​d​m​a​n​a​g​e​r​2​0​1​2使用模板时弹出Runtime error R6025解决方法

    Mindjet.MindManager2012.v10.0在应用个别模板时提示"参数错误",然后自动关闭. 解决办法: 如果是win7系统,可以进入C:\Users\(用户名)\A ...

  2. 如何利用mono把.net windows service程序迁移到linux上

    How to migrate a .NET Windows Service application to Linux using mono? 写在最前:之所以用要把windows程序迁移到Linux上 ...

  3. 《深入理解Java虚拟机》调优案例分析与实战

    上节学习回顾 在上一节当中,主要学习了Sun JDK的一些命令行和可视化性能监控工具的具体使用,但性能分析的重点还是在解决问题的思路上面,没有好的思路,再好的工具也无补于事. 本节学习重点 在书本上本 ...

  4. 揭秘Windows10 UWP中的httpclient接口[2]

    阅读目录: 概述 如何选择 System.Net.Http Windows.Web.Http HTTP的常用功能 修改http头部 设置超时 使用身份验证凭据 使用客户端证书 cookie处理 概述 ...

  5. C#开源实现MJPEG流传输

    本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 许久以前写了篇文章<基于.NET打造IP智能网络视频监控系统>,记录和介绍了自己几年来积 ...

  6. 简单事件机制Java实现

    一个很简单方便的事件处理方法. 使用效果 事件发布者: //定义事件 public static EventTrans<String> AuthFailed = new EventTran ...

  7. Html5 直接插入排序

    直接插入排序算法(Straight Insertion Sort),是排序算法中简单的一种算法,基本思想如下: 将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表.即:先将序列的第 ...

  8. libuv源码分析前言

    Libevent,libev,libuv三者的区别所在? libevent提供了全套解决方案(事件库,非阻塞IO库,http库,DNS客户端),然而libevent使用全局变量,导致非线程安全.它的w ...

  9. 通过easyui tab添加的子页面JS脚本必须放在body才生效

    通过easyui tab添加的子页面JS脚本必须放在body才生效 可通过Chrome查看元素时,head标签是否含有你自己写的JS代码

  10. jQuery之常用且重要方法梳理(siblings,nextAll,end,wrap,apply,call,each)-(二)

    1.siblings() siblings() 获得匹配集合中每个元素的同胞,通过选择器进行筛选是可选的. <body> <div><span>Hello</ ...