проблема с UIPopoverController во время навигации - PullRequest
0 голосов
/ 31 августа 2011

У меня есть UIPopoverController и два класса ViewController.

SaveProject и ProjectName - это класс viewController.

Когда я нажимаю сохранить проект.это дает мне навигацию и загружает другое представление.

Но высота размера UIPopoverController увеличивается до общего размера представления.

Может ли кто-нибудь помочь мне с этим ..

Я прилагаю здесь код:

-(void)createSaveAndCloseView{

    saveAndCloseViewController = [[WGSaveAndCloseViewController alloc]init];
    [saveAndCloseViewController.view setFrame:CGRectMake(0, 0, 310, 171)];
    saveAndCloseViewController.navigationItem.title = @"Save or Discard";
    UIBarButtonItem *cancel = [[UIBarButtonItem alloc] initWithTitle:@"Cancel" style:UIBarButtonItemStylePlain target:self action:@selector(cancelAction:)];          
    saveAndCloseViewController.navigationItem.rightBarButtonItem = cancel;
    [cancel release];
    UINavigationController *navControl = [[UINavigationController alloc] initWithRootViewController:saveAndCloseViewController];

    saveAndClosePopupView = [[UIPopoverController alloc] initWithContentViewController:navControl];
    saveAndClosePopupView.delegate = self;
    saveAndClosePopupView.popoverContentSize = CGSizeMake(312, 160);
    saveAndCloseViewController.view.contentMode = UIViewContentModeScaleAspectFill;
    [saveAndClosePopupView presentPopoverFromRect:[saveAndClose bounds] inView:saveAndClose permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

    [navControl release];

}

-(void)saveProjectClick:(id)sender{
        if (saveProject.tag == tagSave) {

        WGNameProjectViewController *nameProjectViewController = [[WGNameProjectViewController alloc] initWithNibName:nil  bundle:nil];
        [self.navigationController pushViewController:nameProjectViewController animated:YES];
        nameProjectViewController.navigationItem.title = @"Name Project";
        [nameProjectViewController release];
        nameProjectViewController = nil;

    }
}

enter image description here

1 Ответ

1 голос
/ 31 августа 2011

Вам просто нужно добавить что-то вроде:

self.preferredContentSize = <view size>

к методу viewWillAppear: в каждом из ваших контроллеров представления, отображаемых во всплывающем окне.

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