我在我的iPad应用程序中使用了UIPopover,但是当我使用IBAction从这个UIPopover调用一个视图时我有一个问题,这个视图打开但没有旋转我可以看到预览视图在UIPOPover后面旋转仍然开放。
我在调试器控制台上出现错误:
2011-06-18 16:34:49.562 大学校友[8540:207]观点 控制器从NO返回NO -shouldAutorotateToInterfaceOrientation: 适用于所有界面方向。它 应该至少支持一个 取向。 wait_fences:失败了 收到回复:10004003
以下是我用来打开UIPOPOver的IBAction:
-(IBAction)barBtn3:(id)sender
{
if (self.popoverController3 == nil) {
PopOverSelfMain *selfserve =
[[PopOverSelfMain alloc]
initWithNibName:@"PopOverSelfMain"
bundle:[NSBundle mainBundle]];
UIPopoverController *popover3 =
[[UIPopoverController alloc] initWithContentViewController:selfserve];
popover3.delegate = self;
[popover3 setPopoverContentSize:CGSizeMake(220, 220)];
[selfserve release];
self.popoverController3 = popover3;
[popover3 release];
}
CGRect popover3Rect = [self.view convertRect:[btn3 frame] fromView:[btn3 superview]];
[self.popoverController3 presentPopoverFromRect:popover3Rect inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
}
然后在POPOver中我使用此方法打开一个新视图:
-(IBAction)actionevent:(id)sender{
Eventspage *listing = [[Eventspage alloc] initWithNibName:nil bundle:nil];
listing.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:listing animated:YES];
[listing release];
}
我是第一次使用POPOver而我错过了什么...... dismissPopover可以解决这个问题吗?或者我应该使用其他方法来调用视图吗?
答案 0 :(得分:0)
这里不是调用“presentModalViewController”方法而是使用NSTimer直接调用它,您的问题将得到解决。我在我的项目中解决了这个问题,因为我遇到了同样的问题。
所以,你可以在你的项目中这样做。
- (IBAction为)的ActionEvent:(ID)发送方{
[NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(open_EventPage) userInfo:nil repeats:NO];
}
- (void)open_EventPage { Eventspage * listing = [[Eventspage alloc] initWithNibName:nil bundle:nil]; listing.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; [self presentModalViewController:列出动画:YES]; [上市发布]; }
如果您能在这里解决问题,请告诉我。