code: public int getRow(float y) {
          int row = 0;
          y += h(padTop);
          int i = 0, n = cells.size();
          if (n == 0)
              return -1;
          if (n == 1)
              return 0;
          if (cells.get(0).widgetY < cells.get(1).widgetY) {
              // Using y-down coordinate system.
              while (i < n) {
                  Cell<C, T> c = cells.get(i++);
                  if (c.getIgnore())
                      continue;
                  if (c.widgetY + c.computedPadTop > y)
                      break;
                  if (c.endRow)
                      row++;
              }
              return row - 1;
          }
          // Using y-up coordinate system.
          while (i < n) {
              Cell<C, T> c = cells.get(i++);
              if (c.getIgnore())
                  continue;
              if (c.widgetY + c.computedPadTop < y)
                  break;
              if (c.endRow)
                  row++;
          }
          return row;
      }
docs: Returns the row index for the y coordinate, or -1 if there are no cells.