4

アプリケーション内に ScrollView が 1 つあり、この ScrollView には多数の画像が含まれています。

問題は、ScrollView の各画像が特定の領域 (私が定義した領域) 内にあるかどうかを確認するにはどうすればよいかということです。

画像がその領域内にある場合は何かをしたいし、そうでない場合は別のことをしたい.

問題から抜け出すために私を助けてください。

ありがとう。

4

2 に答える 2

2

以下のコードを参照してください。これが機能しているかどうかを確認してください

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);
}
于 2013-05-23T07:42:19.010 に答える