我的应用程序中有一个 ScrollView,这个 ScrollView 中包含许多图像,我们必须向上滚动到底部才能查看每一张图像,因为 scrollview 的面积大于屏幕尺寸。
现在的问题是,我如何检查 ScrollView 的每个图像是否在特定区域内(由我定义)。
如果图片在那个区域内,我想做点什么,如果不在那个区域内,我想做点不同的事。
请帮我解决这个问题,任何帮助都将不胜感激。
谢谢。
最佳答案
查看下面的代码,检查是否有效
public static boolean isInVisible(ScrollView scrollView, View view, Rect region, boolean relative)
{
int top = scrollView.getScrollY() + region.top;
int bottom = scrollView.getScrollY() + region.bottom;
if(!relative)
{
// If given region is not relative to scrollView
// i.e 0,0 does not point to first child left and top
top -= scrollView.getTop();
bottom -= scrollView.getTop();
}
Rect rect = new Rect(region);
rect.top = top;
rect.bottom = bottom;
Rect childRegion = new Rect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom());
return Rect.intersects(childRegion, region);
}
关于android - 如何检查 View 是否在特定区域可见或在 ScrollView 中不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16707020/