Fix bug of calling layoutSubviews directly