protected SizeRequirements calculateMinorAxisRequirements(int axis,SizeRequirements r){
  long min=0;
  long pref=0;
  long max=0;
  multiRowCells=false;
  int n=getViewCount();
  for (int i=0; i < n; i++) {
    View v=getView(i);
    if (getRowsOccupied(v) > 1) {
      multiRowCells=true;
      max=Math.max((int)v.getMaximumSpan(axis),max);
    }
 else {
      min=Math.max((int)v.getMinimumSpan(axis),min);
      pref=Math.max((int)v.getPreferredSpan(axis),pref);
      max=Math.max((int)v.getMaximumSpan(axis),max);
    }
  }
  if (r == null) {
    r=new SizeRequirements();
    r.alignment=0.5f;
  }
  r.preferred=(int)pref;
  r.minimum=(int)min;
  r.maximum=(int)max;
  return r;
}

protected SizeRequirements calculateMinorAxisRequirements ( int axis , SizeRequirements r ) { long min = 0 ; long pref = 0 ; long max = 0 ; multiRowCells = false ; int n = getViewCount ( ) ; for ( int i = 0 ; i < n ; i ++ ) { View v = getView ( i ) ; if ( getRowsOccupied ( v ) > 1 ) { multiRowCells = true ; max = Math . max ( ( int ) v . getMaximumSpan ( axis ) , max ) ; } else { min = Math . max ( ( int ) v . getMinimumSpan ( axis ) , min ) ; pref = Math . max ( ( int ) v . getPreferredSpan ( axis ) , pref ) ; max = Math . max ( ( int ) v . getMaximumSpan ( axis ) , max ) ; } } if ( r == null ) { r = new SizeRequirements ( ) ; r . alignment = 0.5f ; } r . preferred = ( int ) pref ; r . minimum = ( int ) min ; r . maximum = ( int ) max ; return r ; }
calculate the height requirements of the table row . the requirements of multi - row cells are not considered for this calculation . the table itself will check and adjust the row requirements for all the rows that have multi - row cells spanning them . this method updates the multi - row flag that indicates that this row and rows below need additional consideration .
