como calcular o heightForRowAtIndexPath quando a célula ainda não foi construíd

Question - Como calcular melhor a altura de uma linha no método "heightForRowAtIndexPath" de um UITableViewController, considerando que:

Estou usando um UITableViewCell subclasse personalizado e o tamanho real da subview (por exemplo, UILabels) é calculado em tempo de execução e depende de coisas como se o usuário alterasse o tamanho da fonte as células não estão realmente preparadas, parece antes de um "heightForRowAtIndexPath", portanto você não pode confiar em chamar seu instante de célula personalizado específico para consultá-lo

A única coisa em que posso pensar no momento é: 1. Na subclasse UITableViewCell personalizada, crie um método que calcule as alturas de cada subview (por exemplo, UILabel) que está na subclasse UITableViewCell - e use-a na subclasse da célula quando está criando instâncias 2. Também na subclasse personalizada, crie um método de classe que percorra todos os UILabels, chamando o método mencionado acima, para somar as alturas e, portanto, calcular a altura total da linha. Teria que passar os dados para ele (por exemplo, texto em cada um dos UILabels) 3. No UITableViewController "heightForRowAtIndexPath", é necessário chamar o método do tipo "calRowHeight" de (2) acima, passando os dados de texto do rótulo . Chame de forma tão eficaz um método de classe na sua subclasse de célula personalizada que sabe como calcular a altura total da linha, mas está usando a mesma lógica que a célula também precisa ...

Existe uma maneira mais fácil do que isso que eu estou perdendo?

questionAnswers(2)

yourAnswerToTheQuestion