gpt4 book ai didi

java - getGlobalVisibleRect() 究竟是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:06:44 25 4
gpt4 key购买 nike

您好,我一直在查看用于缩放 View 的开发人员代码,但我似乎无法弄清楚这段代码应该做什么:

 final ImageView expandedImageView = (ImageView) findViewById(
R.id.expanded_image);
expandedImageView.setImageResource(imageResId);

// Calculate the starting and ending bounds for the zoomed-in image.
// This step involves lots of math. Yay, math.
final Rect startBounds = new Rect();
final Rect finalBounds = new Rect();
final Point globalOffset = new Point();

// The start bounds are the global visible rectangle of the thumbnail,
// and the final bounds are the global visible rectangle of the container
// view. Also set the container view's offset as the origin for the
// bounds, since that's the origin for the positioning animation
// properties (X, Y).
thumbView.getGlobalVisibleRect(startBounds);
findViewById(R.id.container)
.getGlobalVisibleRect(finalBounds, globalOffset);
startBounds.offset(-globalOffset.x, -globalOffset.y);
finalBounds.offset(-globalOffset.x, -globalOffset.y);

1) 具体来说,我不太确定 getGlobalVisibleRect(finalBounds,globalOffset) 应该做什么?

2) 另外,startBounds.offset() 应该做什么,-globalOffset.x,-globalOffset.y 到底是什么意思?

最佳答案

  1. getGlobalVisibleRect(rect, offset) 返回一个 boolean 值,说明 View 在全局坐标中是否可见。
  2. getGlobalVisibleRect(rect, offset),第一个rect为输出参数,将设置为 View 在全局坐标下的可见矩形。
  3. getGlobalVisibleRect(rect, offset),第二个点也是一个输出参数,设置为View左上角坐标。请注意,如下图所示,此偏移量可以有负值,这意味着 View 的左上角点在屏幕之外。

引用:https://www.cnblogs.com/ai-developers/p/4413585.html

enter image description here

关于java - getGlobalVisibleRect() 究竟是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35789319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com