我的应用程序中有一个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);
}