iPhone: UINavigationController не показывает новый вид - PullRequest
0 голосов
/ 16 июня 2011

У меня есть следующее действие, которое вызывается при нажатии кнопки. Сообщение журнала распечатывается, вид не меняется. Эта функция находится в UIViewController.

Есть идеи, что я делаю не так? Почему новый вид не отображается на красном фоне?

- (void)viewDidLoad
{
[levelButton2 addTarget:self action:@selector(clickButton) forControlEvents:UIControlEventTouchUpInside];
//MORE CODE
}

- (void) clickButton 
    {
        NSLog(@"Clicked Button");
        UIViewController *myViewController = [[UIViewController alloc] init];
        myViewController.title = @"My First View";
        myViewController.view.backgroundColor = [UIColor redColor];

        //to push the UIView.
        [self.navigationController pushViewController:myViewController animated:YES];

        //[self.navigationController pushViewController:nextController animated:YES];
    }

Ответы [ 3 ]

0 голосов
/ 16 июня 2011

Вы должны немного изменить свой метод IBAction как,

 - (void) clickButton 
    {
        NSLog(@"Clicked Button");
        MyFirstController *myViewController = [[MyFirstController alloc] initWithNibName:@"MyFirstController" bundle:nil];
        myViewController.title = @"My First View";
        myViewController.view.backgroundColor = [UIColor redColor];

        //to push the UIView.
        [self.navigationController pushViewController:myViewController animated:YES];

        //[self.navigationController pushViewController:nextController animated:YES];
    }
0 голосов
/ 16 июня 2011
-(void) clickButton 
{
    NSLog(@"Clicked Button");
    MyFirstController *myViewController = [[MyFirstController alloc] init];

    [self.navigationController pushViewController:myViewController animated:YES];
    [myViewController release];
}

Затем перейдите в файл MyFirstController.m и

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{
    if(self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])
    {
        self.title = @"My First View";
    }
    return self;
}

Надеюсь, это вам поможет.

0 голосов
/ 16 июня 2011

Вы не использовали или упоминали файл NIB в этом контроллере. Добавьте файл NIB или установите корневой контроллер вида для навигации с контроллером вида и нажмите контроллер вида

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...