Como criar uma célula de tabela de redimensionamento automático para inserir textos como no aplicativo "mail" do iPhone?

Estou tentando emular algo como a página "nova mensagem" no aplicativo de e-mail da Apple no iPhone. Eu o implementei com uma tableview e consegui que as linhas "Para", "CC" e "Assunto" se comportassem corretamente, mas não sei como implementar a parte de mensagem real da página.

Existem vários problemas que estou tendo. Atualmente, estou tentando implementá-lo, colocando um UITextView na célula (desative as barras de rolagem na exibição de texto). Eu tenho a exibição de texto redimensionada quando é alterada, modificando seu quadro para a nova altura do conteúdo. O primeiro problema é que eu também preciso fazer isso para a altura da célula. Como heightForRowAtIndexPath parece ser chamado apenas quando a linha é carregada pela primeira vez, não posso modificar a altura. Suponho que eu poderia chamar dados de recarga na tabela, mas isso parece realmente ineficiente em toda a tabela toda vez que o texto for inserido. Qual é a melhor maneira de obter a célula da tabela para redimensionar automaticamente conforme o usuário digita? Encontrei muitos exemplos de como fazê-lo em exibições de tabela isoladas e como redimensionar as células da tabela na inicialização, mas não consigo encontrar nenhum que permita fazer as duas coisas ao mesmo tempo.

Finalmente, gostaria que a borda inferior da célula da tabela fosse invisível. Se você olhar para o aplicativo de email, notará que não há linha na parte inferior do espaço da mensagem, o que implica que você pode continuar digitando. Eu sempre tenho um na minha exibição de tabela (mesmo quando adiciono um rodapé) e não consigo descobrir como me livrar dele. (Talvez eu deva fazer com que meu corpo da mensagem seja o próprio rodapé?)

questionAnswers(3)

yourAnswerToTheQuestion