У меня довольно сложный подкласс UITableViewController.Кроме того, данные в табличном представлении могут быть отсортированы одним из трех способов в зависимости от настроек пользователя (доступ к которым осуществляется в другом представлении).Каждый из параметров требует различной сортировки и группировки табличного представления, хотя поведение элементов в строках является общим (например, действие выбора для каждой строки одинаково, независимо от настроек отображения. Аналогично, верхняя и нижняя панели инструментовсогласуются).Это приводит к большому количеству ветвлений в моем коде в зависимости от примененных пользовательских настроек.
Есть ли хороший способ немного разделить это?Я рассмотрел три отдельных подкласса UITableView, но затем я теряю общность.Так, может быть, абстрактный пользовательский подкласс UITableView с тремя подклассами, унаследованными оттуда?Как бы я переключился между случаями, когда настройка изменилась?
Возможно, у вас есть идея получше?Поскольку изменяется только содержимое самого табличного представления, я хотел бы избежать повторения и поддержания одного и того же кода три раза.