6

Mam mały problem. Próbuję dodać popoverview do mojej aplikacji, ale część widoku popoverview jest ukryta przez pasek kontrolera nawigacji. Jak mogę umieścić nakładkę popoverview na górze paska nawigacyjnego? Oto obraz problemu: http://img593.imageshack.us/img593/4056/viewn.jpgJak nakładać widok na pasek kontrolera nawigacji?

Oto mój kod pracuję z:

- (IBAction)onButtonClick:(UIButton *)button { 

if (self.popoverController) { 
    [self.popoverController dismissPopoverAnimated:YES]; 
    self.popoverController = nil; 
    [button setTitle:@"Show Popover" forState:UIControlStateNormal]; 
} else { 
    UIViewController *contentViewController = [[WEPopoverContentViewController alloc] initWithStyle:UITableViewStylePlain]; 

    self.popoverController = [[[WEPopoverController alloc] initWithContentViewController:contentViewController] autorelease]; 
    [self.popoverController presentPopoverFromRect:button.frame 
              inView:self.view 
          permittedArrowDirections:UIPopoverArrowDirectionDown 
              animated:YES]; 
    [contentViewController release]; 
    [button setTitle:@"Hide Popover" forState:UIControlStateNormal]; 
} 
} 

Czy mimo to, aby ten popover nad paskiem kontrolera nawigacji?

Mam nadzieję, że ktoś wie, jak rozwiązać ten problem, Z góry dziękuję.

Odpowiedz

8

Czy można to powiązać z parametrem inView z numerem WEPopoverController presentPopoverFromRect:inView:permittedArrowDirections:animated:? Zamiast prezentować go w self.view, mógłbyś zaprezentować się dalej w hierarchii widoku (jak w self.view.window)?

+0

OMG !!! Próbowałem, ale nie specjalnie wypróbowałem self.view.window. Próbowałem self.window i super.view i itp. Dziękuję bardzo. Działa idealnie. – 0SX

+0

Cieszę się, że działało :) – pwc

0

ohh..I dostał it..I zmienił linię w funkcji

- (void)presentPopoverFromRect:(CGRect)rect 
        inView:(UIView *)theView 
    permittedArrowDirections:(UIPopoverArrowDirection)arrowDirections 
        animated:(BOOL)animated { 

w WEPopOverController z [keyView addSubview:backgroundView]; do [theView addSubview:backgroundView];

Powiązane problemy