1

我有一个带按钮的屏幕。单击该按钮将显示一个带有两个按钮的弹出框。当弹出框被解除时,我希望能够使用以下方法:

#pragma mark - UIPopoverControllerDelegate
- (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController {
NSLog(@"OrderViewController.m -popoverControllerDidDismissPopover start");
}

弹出视图有自己的类:

#import <UIKit/UIKit.h>
#import "MenuItemModel.h"

@interface SelectedItemsOptionsViewController : UIViewController
@property (weak) id <UIPopoverControllerDelegate> delegate;
@property (strong, nonatomic) MenuItemModel *item;

@end

创建弹出框的类有:

@interface OrderViewController : UIViewController <PageViewControllerDelegate,                                        
UITableViewDataSource, UITableViewDelegate, ServiceConnectorDelegate,
UIPopoverControllerDelegate>

所以 OrderViewController - 想知道 SelectedItemsOptionsViewController 何时被解雇。

我声明了方法(第一个代码块),并将委托设置为:

SelectedItemsOptionsViewController *destViewController = (SelectedItemsOptionsViewController *)segue.destinationViewController;

popSegue = (UIStoryboardPopoverSegue *)segue;

[destViewController setDelegate:self];
destViewController.item = toDisplay;

因此,据我所知,我将委托设置为 OK ......委托属性在 SelectedItemsOptionsViewController.m 中是 @syntheized ,好吧,它让我有点发疯。

4

1 回答 1

0

我可能在这里误解了一些东西,但看起来您正在为 UIViewController 类分配委托,但是您在情节提要中将 popOver 的委托分配到哪里?

于 2013-04-23T16:25:08.340 回答