Существует несколько подходов к этой проблеме, и она зависит только от вас, какой из них вам подходит Тем не менее, я бы предложил вам создать подкласс UITableViewCell для каждого типа вопросов, которые вы получите.
Какой UITableViewCell использовать? :
Предпочтительным способом было бы иметь разные подклассы UITableViewCell для каждого вопроса, который вы получаете.
Наличие только одной ультрадинамической ячейки может вызвать проблемы с reuseIdentifier, потому что он не будет использоваться повторно должным образом, так как в представлении будут другие элементы управления.
Вот вопрос, который должен решить подобную проблему:
2 различных типа пользовательских UITableViewCells в UITableView (При таком подходе вы можете избежать проблемы reuseIdentifier, которая может возникнуть
Другая задача (iPhone / iPad):
Другое важное требование заключается в том, что вы работаете на iPhone и iPad, поэтому в UITableViewCell вы должны определить, на каком устройстве вы работаете сейчас, и выполнить пользовательскую инициализацию.
Определение устройства (iPhone, iPod Touch) с помощью iPhone SDK
Это избавит вас от создания другого набора UITableViewCells исключительно для iPad. Вы хотите иметь по крайней мере такую большую динамику в своем коде.
Управление различными типами вопросов:
Для сравнения