Android 3种坐标系、View在各坐标系下获取自身坐标的方法、View的滑动和scroll方法

本文介绍了Android的三种坐标系:屏幕坐标、布局坐标和视图坐标,并详细阐述了View在不同坐标系下获取自身坐标的多种方法。同时,讨论了View的滑动方法,包括scrollTo和scrollBy,以及如何实现View的滑动。内容涵盖了坐标获取、滑动原理及其在实际开发中的应用。
摘要由CSDN通过智能技术生成

注:理解View获取自身坐标或者说位置的各种方法重点在于考虑该方法获取到的坐标是相对于3种坐标系中的哪种。

Android 3种坐标系


Android 3种坐标系都是以右、下方向为直角坐标系x、y轴的正方向。此文介绍的都是二维直角坐标系,不考虑 z 轴(z 轴以屏幕正上方的方向为正方向)。

一般来说,Android中存在三类坐标:

屏幕坐标:以屏幕的左上角为原点,水平向右为x轴正方向,竖直向下为y轴正方向。
布局坐标:以view的左上角为原点,水平向右为x轴正方向,竖直向下为y轴正方向。之所以称之为布局坐标是因为view的左上角的位置是在view的layout过程中确定的。
视图坐标(绘制坐标):视图坐标是view的draw过程中绘制内容时参考的坐标。存在于一个抽象的画布上。
在理解视图坐标上,很重要的一点是:draw过程中,我们的画布是无限大的,画布上有一个直角坐标系,称之为视图坐标。你可以以视图坐标为基准在画布上随便画点啥。View的layout过程中的四个参数(l,t,r,b)确定了一个矩形框。矩形框在屏幕上且在屏幕上的位置一般是不会改变的,矩形框的左上角就是当前View的布局坐标。我们拿一个和这个矩形框一样大小的另一个矩形框放到画布上,其左上角与视图坐标重合,画布上的矩形框在画布上框住的内容就会绘制到屏幕上对应的矩形框。当调用scrollto或scollby方法时,画布不动,画布上的矩形框移动。这个过程中,视图坐标在画布上的位置始终不变,布局坐标在屏幕上的位置始终不变。

打个比方:我们有一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值