textBaseline:defaultVerticalAlignment为baseline的时候,会用到这个属性。 2.5.2 源码 我们直接来看其布局源码: 第一步,当行或者列为0的时候,将自身尺寸设为0x0。 if (rows * columns == 0) { size = constraints.constrain(const Size(0.0, 0.0)); return; } 第二步,根据textDirection值,设置方向,一般在...
第五步,根据alignment,调整child的位置。 for(intx=0; x < columns; x +=1) {finalintxy=x + y * columns;finalRenderBoxchild=_children[xy];if(child !=null) {finalTableCellParentDatachildParentData=child.parentData;switch(childParentData.verticalAlignment ?? defaultVerticalAlignment) {caseTableCellVe...
positions[x] = positions[x-1] + widths[x-1]; _columnLefts = positions; tableWidth = positions.last + widths.last; break; } 第三步,设置每一个cell的尺寸。 for (int x = 0; x < columns; x += 1) { final int xy = x + y * columns; final RenderBox child = _children[xy]; i...