Как переключаться между различными контроллерами UIView - PullRequest
2 голосов
/ 08 августа 2011

Я хочу написать собственный переключатель, в котором будут расположены две пользовательских вкладки. Его структура выглядит следующим образом - enter image description here

Я хочу использовать uiviewcontroller.

Теперь я использую следующий код:

- (void)changeViewController:(NSInteger)sender{

    if(viewController){
        [viewController.view removeFromSuperview];
        [viewController release];  
        NSLog(@"released");
    }

    switch (sender) {
        case 1:      
            viewController = [[VC1 alloc] init];
            break;
        case 2:
            viewController = [[VC2 alloc] init];
            break;
        case 3:
            viewController = [[VC3 alloc] init];
            break;

        default:
            break;
    }

    [viewController.view setFrame:CGRectMake(0, 100, 320, 380)];
    [self.view addSubview:viewController.view];

}

но я думаю, что это неправильно!

Может быть использована такая структура - presentModalViewController, dismissModalViewControllerAnimated или другой метод для работы над подобием navigationViewController?

Ответы [ 2 ]

2 голосов
/ 08 декабря 2011

Попробуйте это

[self.navigationController pushViewController:viewController animated:YES];

или

[self.view addsubview:viewcontroller.view];
0 голосов
/ 08 августа 2011

Вы можете попробовать это - [self.navigationController pushViewController:viewController animated:NO];

или [self.navigationController popToViewController:targetController animated:YES];

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

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

...