Android canvas.getClipBound的工作原理

Android canvas.getClipBound的工作原理,android,android-canvas,android-drawable,Android,Android Canvas,Android Drawable,我想了解canvas.getClipBound方法的内部结构。 请引导我建立我的理解 例如: 在画布上绘制和缩放时,使用剪贴簿,我们可以通过询问得到滚动的x和y位置 int l = canvas.getClipBound().left; int t = canvas.getClipBound().top; 我想知道它在内部是如何工作的。假设您的画布的宽度和高度为480x800,并且您在画布上绘制了一些东西。一旦你缩放它,android系统将计算出当前画布在特定的缩放级别下可以显示给用户多少区域

我想了解canvas.getClipBound方法的内部结构。 请引导我建立我的理解

例如: 在画布上绘制和缩放时,使用剪贴簿,我们可以通过询问得到滚动的x和y位置

int l = canvas.getClipBound().left;
int t = canvas.getClipBound().top;

我想知道它在内部是如何工作的。

假设您的画布的宽度和高度为480x800,并且您在画布上绘制了一些东西。一旦你缩放它,android系统将计算出当前画布在特定的缩放级别下可以显示给用户多少区域,并且会裁剪多少区域。例如,画布缩放后的实际可显示区域可以是300x500,然后剪辑区域将是相同的300x500,这意味着该300x500被缩放并显示在480x800显示中。在本例中,当前未显示的原始画布的其余区域(宽度和高度)可以计算为

xScroll = 480-300;

canvas.getClipBound().left给出缩放屏幕水平滚动和垂直滚动的程度
canvas.getClipBound().top显示垂直滚动的大小


希望这会对您有所帮助。

查看链接,这可能会很有用。实际上我想问,如果我确实使用[1fyScroll = 800-500;