Autolayout no UITextField: o layout automático ainda é necessário após a execução de -layoutSubviews

Estou subclassificando UITextField para adicionar um rótulo no lado esquerdo. Estou usando o layout automático para fazer o layout do rótulo. No entanto, continuo recebendo esse erro:

Veja como estou fazendo meu código de layout:

- (void)updateConstraints {

self.segmentLabel.translatesAutoresizingMaskIntoConstraints = NO;

NSLayoutConstraint *constraint;
constraint = [NSLayoutConstraint constraintWithItem:self.segmentLabel attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeHeight multiplier:1.0 constant:0.0f];
[self addConstraint:constraint];
constraint = [NSLayoutConstraint constraintWithItem:self.segmentLabel attribute:NSLayoutAttributeLeading relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeLeading multiplier:1.0 constant:0.0f];
[self addConstraint:constraint];
constraint = [NSLayoutConstraint constraintWithItem:self.segmentLabel attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeTop multiplier:1.0 constant:0.0f];
[self addConstraint:constraint];
constraint = [NSLayoutConstraint constraintWithItem:self.segmentLabel attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:self.segmentWidth];
[self addConstraint:constraint];

[super updateConstraints];

}

Quando não faço nenhum ajuste no campo de texto, isso funciona bem.

No entanto, se eu tentar definir o texto do espaço reservado, recebo esta exceção:

Finalizando o aplicativo devido à exceção não capturada 'NSInternalInconsistencyException', motivo: 'Layout automático ainda é necessário após a execução de -layoutSubviews. A implementação de -layoutSubviews do DDSegmentedTextField precisa chamar super. '

No entanto, não estou substituindo -layoutSubviews.

Alguém já encontrou isso? O que estou fazendo errado?

Obrigado!

questionAnswers(3)

yourAnswerToTheQuestion