Android View的滑动方式

作者: 在岁月中远行 | 来源:发表于2022-09-13 01:14 被阅读0次

自定义View是安卓进阶的基础,是安卓开发者不得不学习的知识点,而酷炫的自定义View效果也是离不开View的滑动。我们来了解View是如何实现滑动的。

View坐标系基础知识

View的位置主要它的四个顶点来决定,分别对应于View的四个属性。top,left,right,bottom。其中top是左上角纵坐标,left是左上角横坐标,right是右下角横坐标,bottom是右下角纵坐标。

但这些坐标都是相对于父View的。

除了上面确定View位置的参数,还有x,y,translationX,translationY这四个参数,x,y代表View的左上角的坐标值,而translationX,translationY是左上角坐标相对于父View的偏移量,默认为0,也就是View不移动,则x,y等于left和top。在View的滑动过程中,left和top表示的是View原始位置的值,这是不会改变的。

Android View的滑动方式

1 layout方法改变View位置滑动View

首先我们来看看layout方法源码

onLayout是View绘制过程中的一个方法,可以通过它确定View的位置,也就是说通过layout方法可以改变View的位置,

这样就能实现跟手滑动,可以去前后打印left,top,right,bottom数值,发现前后是变化的了的,改变的不只是内容。

offsetLeftAndRight和offsetTopAndBottom方法改变View的位置让其滑动。

效果也是一样的,这两个方法也是真实地改变了View的位置而不是View的内容。

使用ScrollTo()和ScrollBy()滑动View

这两这个方法是View提供的滑动方法,前者是移动到某个点,后者是根据传入的偏移量进行移动。先看源码实现:

这里有个mScrollX规则我们可以这么理解:

View的左边缘在View内容的左边缘左边时,mScrollX为负,反之为正。

View的上边缘在View内容的上边缘上边时,mScrollY为负,反之为正。

也是效果一样的达到。

相关文章

  • 知识点总结

    知识点总结 Android View View的滑动方式layout(left,top,right,bottom)...

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

    相关文章:Android View体系(一)视图坐标系 1.View的滑动简介 View的滑动是Android实现...

  • Android 自定义 View

    经过前面几篇文章 View 基础 View 的测量过程 View 的布局和绘制 Android 滑动原理与方式 A...

  • View的滑动

    Android中View可以通过三种方式实现滑动 通过View本身提供的scrollTo/scrollBy方法实现...

  • Android View 的滑动方式

    前言 自定义View作为Android进阶的基础,是我们开发者不得不学习的知识,而酷炫的自定义View效果,都离不...

  • Android View的滑动方式

    自定义View是安卓进阶的基础,是安卓开发者不得不学习的知识点,而酷炫的自定义View效果也是离不开View的滑动...

  • 【View系列】让View滑动起来的几种方式

    前言 今天我们聊个比较轻松基础的话题:让View滑动起来的几种方式。Android中又很多可滑动的View,比如S...

  • View的事件体系(上)

    目录 View基础知识 View的滑动 弹性滑动 View基础知识 View是Android中所有控件的基类,不光...

  • Scroller工作机制

    在Android开发中有多种方式实现View的滑动,常见的有三种如下: 不断地修改View的LayoutParam...

  • Scroller

    在Android开发中有多种方式实现View的滑动,常见的有三种如下: 不断地修改View的LayoutParam...

网友评论

    本文标题:Android View的滑动方式

    本文链接:https://www.haomeiwen.com/subject/lnlcortx.html