我认为真的很简单的问题。
我有一个主视图和一个弹出视图。
我正在尝试制作一个自定义委托,这将使我能够在某些时候关闭弹出视图。我的代码发布在下面。我遇到的真正简单的问题是我的代码似乎正在输入委托代码。关于为什么的任何想法?它构建并运行但似乎没有发生任何事情,我已经放置了 NSLog statments,popover nslog 出现但 mainview 中的函数 dismissPopover 什么都不做。
主视图.h
@interface MainScreen : UIViewController<DismissPopoverDelegate>
主视图.m
- (void) dismissPopover:(NSNumber *)dataa
{ /* Dismiss you popover here and process data */
[popoverController dismissPopoverAnimated:YES];
NSLog(@"OLOLO");
}
弹出框.h
@protocol DismissPopoverDelegate
- (void) dismissPopover:(NSNumber *)yourDataToTransfer;
@end
@interface SelectAgePopOver : UIViewController<UITableViewDataSource,
UITableViewDelegate,UIPopoverControllerDelegate>{
NSArray *items;
id<DismissPopoverDelegate> delegate;
}
@property (nonatomic, assign) id<DismissPopoverDelegate> delegate;
弹出框.m
[self.delegate dismissPopover:selrow];
我希望代表打电话的地方。
谢谢
弹出视图由 main view.m 中的以下方法调用
controller = [[SelectAgePopOver alloc] initWithNibName:@"SelectAgePopOver" bundle:nil];
popoverController = [[UIPopoverController alloc] initWithContentViewController:controller];
[popoverController setDelegate:self];
popoverController.popoverContentSize = CGSizeMake(250, 294);
if ([popoverController isPopoverVisible]) {
[popoverController dismissPopoverAnimated:YES];
} else {
CGRect popRect = CGRectMake((self.AgeRangeTextField.frame.origin.x+50),
(self.AgeRangeTextField.frame.origin.y+50),
(self.AgeRangeTextField.frame.size.width),
(self.AgeRangeTextField.frame.size.height));
[popoverController presentPopoverFromRect:popRect inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
}