Переключение просмотров в iPhone SDK? - PullRequest
1 голос
/ 16 февраля 2010

Почему это не изменит меня? Когда я нажимаю кнопку, она ничего не делает ...

-(IBAction)howtoplayButtonClicked{
    howToPlayViewController = [[HowToPlayViewController alloc] initWithNibName:@"HowToPlayViewController" bundle:nil];
    [self.navigationController pushViewController:howToPlayViewController animated:YES];
    [HowToPlayViewController release];

}

в файле .h у меня есть это ...

#import <UIKit/UIKit.h>
#import "HowToPlayViewController.h"

@interface PopToItViewController : UIViewController {

    HowToPlayViewController *howToPlayViewController;

}

-(IBAction)howtoplayButtonClicked;

@end

Ответы [ 4 ]

4 голосов
/ 16 февраля 2010

Ваш метод действия ...

-(IBAction)howtoplayButtonClicked;

... должен выглядеть следующим образом:

-(IBAction)howtoplayButtonClicked:(id) sender;

В неправильной форме он не может быть вызван.Если исправление формы не работает, вы должны:

  1. Поместить в метод точку останова или оператор журнала, чтобы увидеть, вызывается ли он когда-либо.Если он не проверяет IBConnections, чтобы убедиться, что кнопка подключена к методу.
  2. Вам не нужно howToPlayViewController устанавливать в качестве свойства, если вы инициализируете его из nib, а затем отпускаете его.Обычно вы можете использовать свойство только в том случае, если хотите подключить его в Интерфейсном Разработчике, и в этом случае оно должно быть определено следующим образом:

    IBOutlet HowToPlayViewController *howToPlayViewController;

2 голосов
/ 16 февраля 2010

Для начала, это неправильно:

[HowToPlayViewController release];

Должно быть:

[howToPlayViewController release];

Я не знаю, что делает отправка сообщения о выпуске в класс.

0 голосов
/ 17 ноября 2010

Установите initWithNibName:nil" и позвольте контроллеру представления сделать все остальное.

0 голосов
/ 16 февраля 2010

Убедитесь, что self.navigationController! = Nil

...