2012-02-28 2 views
0

У меня есть UIViewController, который хочет выполнить некоторый код, когда он отклоняется через leftBarButtonItem (и выталкивается из стека, чтобы вернуться к родительскому контроллеру представления). Это представление имеет собственные подходы, поэтому я не могу просто использовать viewWillDisappear.Добавление слушателя к leftBarButtonItem

Каков наилучший способ для вызова пользовательского метода, когда пользователь нажимает кнопку на левой панели, чтобы вернуться в супервизор?

ответ

1

Даже с subviews вы должны быть в состоянии использовать viewWillDisappear.

Если вам нужны конкретные действия, которые необходимо предпринять в подзонах, пройдите через них в viewWillDisappear.

Если по какой-то причине вы должны обнаружить краны на левой пункта панели кнопок Ваш лучший выбор для наложения фактического UINavigationBar для этого UIViewController с двойником UIImageView и реализовать кнопку «Назад» на левой стороне пользовательского двойника (стандартный UIButton).

Link пользовательские кнопки на IBAction, а затем выполнять любые действия, которые нужно там следуют

[self.navigationController popViewControllerAnimated:YES]; 
+0

Дело в том, на мой взгляд исчезает, когда его подвид нагрузки, а не только тогда, когда он возвращается его супервизор, поэтому viewWilDisappear не работает. Это обычай звучит немного неудачно. Может быть, я должен идти в другом направлении с этим ... –

+0

Это определенно звучит так, как будто весь подход может использовать некоторую повторную работу, но в качестве быстрого исправления вы можете запускать проверки в viewWillDisappear, чтобы проверить, не было ли оно выгружено или загружено подвью. Кроме того, вы можете переключиться на раскадровку и использовать метод '- (void) prepareForSegue: (UIStoryboardSegue *) segue sender: (id) для настройки для ваших нужд. – 0x90

+0

Я собираюсь переосмыслить это, но это хорошие идеи. Благодаря! –

Смежные вопросы