2014-10-28 53 views
0

当我在ViewDidLoad方法中添加UIPopoverController时,它显示一个空的弹窗视图。当我添加一个UITapGestureRecognizer时会发生同样的事情;它不触发附加的方法。如果我将代码放在我的ViewDidAppear中,它确实有效,但在某些情况下,从不会调用ViewDidAppear,具体取决于视图在故事板中的加载位置。UIPopoverController和UITapGestureRecognizer在ViewDidLoad中不工作

这里是我的代码:

UIViewController* popoverContent = [[UIViewController alloc] init]; 
UIView *popoverView = [[UIView alloc] init]; 
popoverView.backgroundColor = [UIColor whiteColor]; 
popoverContent.view = popoverView; 

pickerPopup = [[UIPopoverController alloc] initWithContentViewController:popoverContent]; 
pickerPopup.delegate = (id)self; 

[pickerPopup setPopoverContentSize:CGSizeMake(320, 240) animated:NO]; 

而且UITapGestureRecognizer

tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(openPicker:)]; 
[_form_from addGestureRecognizer:tap]; 

回答

0

我解决它现在使用的延迟在ViewDidLoad方法,像这样

[self performSelector:@selector(custom_init) withObject:nil afterDelay:0.1]; 

仍不很t得到为什么UITapGestureRecognizer不会触发。如果我将它附加到视图上,它会起作用,但如果我将它附加到静态单元格中的文本框中,它不会起作用。

相关问题