2012-01-06 3 views
0

Я разрабатываю приложение и случайно его запускаю на iOS Simulator 4.3; приложение работает нормально.iOS 5 - кнопки перестают работать

При переключении на iOS5-симулятор кнопка, которая должна уволить модального контроллера, больше не работает? Любые идеи почему?

Ниже мой код:

(метод для вызова контроллера):

if (self.infoModalController == nil) 
    self.infoModalController = [[[InformationViewController alloc] initWithNibName: 
            NSStringFromClass([InformationViewController class]) bundle:nil] autorelease]; 

[self.navigationController presentModalViewController:self.infoModalController animated:YES]; 

(метод уволить):

- (void)dismissButtonPressed:(id)sender 
{ 
[self.parentViewController dismissModalViewControllerAnimated:YES]; 
} 

В вид нагрузок хорошо, но это не будет увольнять ?

Приветствия заранее!

Лоуренс

ответ

0

Для прошивкой 5 вы хотите использовать presentingViewController вместо parentViewController.

Вот соответствующие документы: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/parentViewController

Обновление: Я должен упомянуть, что вызов [само dismissModalViewController] из модальных будет иметь тот же результат, то распускать селектор просто передается по цепочке ответчик предъявителю.

0

При отклонении от контроллера модального вида безопаснее всего делать [self dismissModalViewControllerAnimated:YES]. Это сообщение может быть отправлено как родительскому представлению, так и модальному виду.
Решение будет таким:

- (void)dismissButtonPressed:(id)sender 
{ 
    [self.parentViewController dismissModalViewControllerAnimated:YES]; 
}