更新了计算 layout 的方法