Android中View的滑动方式
2016-07-19 20:51
423 查看
View的滑动
View滑动有三种方式:View本身提供的scrollTo和scrollBy方法
通过动画给View添加平移效果实现滑动
改变View的LayoutParams是的View重新布局实现滑动
使用scrollTo和scrollBy方式
scrollTo和scrollBy只能改变View内容的位置不能改变view的位置(只能将view的内容滑动,而不能将view本身进行移动)从源码可以看到scrollBy最后还是会调用scrollTo方法的
scrollBy实现了基于当前位置的相对滑动即在滑动到当前位置加上相应的偏移量,scrollTo实现了基于所传递参数的滑动,根据传递的参数确定滑到那个位置
在滑动的过程中,有两个重要的参数mScrollX和mScrollY,这个参数的值通过getScrollX和getScrollY方法分别得到。当view的左边缘在view内容的左边缘的右边时,mScrollX是正值,反之为负值;当view的上边缘在view内容的上边缘的下边是,mScrollY为正值,反之为负值。
使用动画
使用动画方式来移动view的translationX和translationY属性(translationX和translationY默认初始值为0,其值为相对于原来位置的偏移量)。使用动画方式既可以采用传统的view动画,即补间动画,也可以采用属性动画,不过属性动画是android3.0之后才有的,android3.0之前是无法使用属性动画的,这个时候可以通过使用动画兼容库nineoldandroids来实现属性动画,不过此时实现的属性动画的本质仍然是传统的view动画,
传统的view动画即补间动画是不能真正改变view的位置的,平移后的只是view的影像而已,但是属性动画却可以。
改变布局参数
重新设置一个view的LayoutParams参数即可总结:
scrollTo/scrollBy:操作简单,适合对view的内容滑动动画:操作简单,主要适用于没有交互的view和实现复杂的动画效果
改变布局参数:操作稍微复杂,适用于有交互的view
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories