вид замена техники


Я хочу услышать мнения разработчиков о лучшем способе обмена мнениями на iphone.

Например, у меня есть панель вкладок,и одна из ее вкладок по умолчанию имеет вид входа. Когда пользователь входит в систему, представление изменяется на вошедшее представление.

Я собирался просто использовать один контроллер вида и иметь все содержимое в одном xib, скрывая и показывая содержимое по мере необходимости, но это не кажется элегантным.

Во-вторых, я рассматривал возможность иметь один viewcontroller и просто поменять местами xib. Я немного неохотно пробовать это, поскольку я прочитал в статье или 2, что это может привести к утечке памяти.

Наконец, я рассматривал возможность использования 2 контроллеров вида с 2 отдельными xibs. Мое чутье подсказывает мне, что это, вероятно, было бы "правильным" решением, но я до сих пор не смог найти ни одного примера кода на правильный способ сделать это.

Можете ли вы дать совет, как лучше всего решить эту проблему? Есть ли техника, которую я не перечислил? Спасибо.

1 2

1 ответ:

Я бы сохранил логику, для которой вид должен отображаться в контроллере вида. XIB - это само представление, и в нем не должно быть объектов, которые являются временными или не всегда видимыми для данного конкретного представления.

Ваш второй подход (обмен мнениями) кажется мне правильным, и я всегда делаю что-то лично в таких ситуациях. Я не знаю о каких-либо проблемах с памятью, если вы сделаете это правильно (удалите из superview, а затем загрузите новое представление в качестве подвида взгляд контролера). Вы можете выполнить любую пользовательскую инициализацию после загрузки нового XIB и перед его показом пользователю.

Несколько контроллеров вида просто кажется лишним, поскольку тогда вам в идеале потребуется другой контроллер верхнего уровня дляУправления двумя контроллерами вида.