0

私はsearchcontrollerviewcontroller、detailviewcontroller、およびfilterviewcontrollerを持っています

Appdelegate で、最初の 2 つを splitview コントローラーとして追加し、次のように detailviewcontroller に委任しました。

self.splitViewController.delegate = detailViewController;
self.splitViewController.viewControllers = [NSArray arrayWithObjects:searchViewController, detailNavigationController, nil];

iPadが回転すると、popoverviewのボタンが表示されます

- (void)splitViewController:(UISplitViewController *)splitController
     willHideViewController:(UIViewController *)viewController
          withBarButtonItem:(UIBarButtonItem *)barButtonItem
       forPopoverController:(UIPopoverController *)popoverController{  

    UIBarButtonItem *filterbutton = [[UIBarButtonItem alloc]initWithTitle:@"Filter"     style:UIBarButtonItemStylePlain target:nil action:@selector(showFilterPopover:)];

    barButtonItem.title = NSLocalizedString(@"Search", @"Search results");
    [self.navigationItem setLeftBarButtonItems:[NSArray arrayWithObjects:barButtonItem,filterbutton, nil] animated:YES];

    self.masterPopoverController = popoverController;
}

ここでフィルタービューを初期化します

-(void)showFilterPopover: (id) sender{

    FilterViewController *controller = [[FilterViewController alloc]initWithNibName:@"FilterViewController" bundle:nil];

    UIPopoverController *popover =
    [[UIPopoverController alloc] initWithContentViewController:controller];

    popover.delegate = self;
    self.masterPopoverController = popover;


    [self.masterPopoverController
         presentPopoverFromBarButtonItem:sender
                permittedArrowDirections:UIPopoverArrowDirectionAny
                                animated:YES];
}

しかし、何も起こりません。ポップオーバーは詳細ビューでは機能しますが、フィルタービューでは機能しません..何か忘れていますか?

4

0 に答える 0