code: protected boolean canScroll(View v, boolean checkV, int dy, int x, int y) {
          if (v instanceof ViewGroup) {
              final ViewGroup group = (ViewGroup) v;
              final int scrollX = v.getScrollX();
              final int scrollY = v.getScrollY();
              final int count = group.getChildCount();
              // Count backwards - let topmost views consume scroll distance first.
              for (int i = count - 1; i >= 0; i--) {
                  // TODO: Add versioned support here for transformed views.
                  // This will not work for transformed views in Honeycomb+
                  final View child = group.getChildAt(i);
                  if (y + scrollY >= child.getTop() && y + scrollY < child.getBottom() &&
                          x + scrollX >= child.getLeft() && x + scrollX < child.getRight() &&
                          canScroll(child, true, dy, x + scrollX - child.getLeft(),
                                  y + scrollY - child.getTop())) {
                      return true;
                  }
              }
          }
  
          return checkV && ViewCompat.canScrollVertically(v, -dy);
      }
docs: Tests scrollability within child views of v given a delta of dx.
  
  @param v      View to test for horizontal scrollability
  @param checkV Whether the view v passed should itself be checked for scrollability (true),
  or just its children (false).
  @param dy     Delta scrolled in pixels
  @param x      X coordinate of the active touch point
  @param y      Y coordinate of the active touch point
  @return true if child views of v can be scrolled by delta of dx.