从横向切换视图从uipopover

时间:2012-05-08 15:22:55

标签: view orientation switch-statement landscape uipopover

像往常一样,我再次遇到一个非常简单的问题,但在这里压力很大。只是一个简单的案例:我即将在两个视图之间切换,但仅限于横向(左和右)。当我直接使用矩形按钮切换并使用相同的方法切换回主视图时,实际上很容易。但问题发生在我把uipopover之间。所以例如当我从主视图中按下按钮时,在切换之前,弹出窗口出现在弹出窗口内的矩形按钮,按下按钮后,出现第二个视图。这是问题的开始。在第二个视图中,当我试图将设备从横向放置到横向左侧时,第二个视图刚刚卡住,但主视图(在背景中)确实旋转到指定方向。下面是我在两个实现文件中使用的代码:

#import "landscapeViewController.h"
#import "popOver.h"

@interface landscapeViewController ()


@end

@implementation landscapeViewController
@synthesize myPopover;



-(IBAction)showPop:(id)sender {
    popOver *popover = [[popOver alloc] init];
    UIPopoverController *pop1 = [[UIPopoverController alloc] initWithContentViewController:popover];
    self.myPopover = pop1;
    [pop1 setDelegate:self];
    [pop1 setPopoverContentSize:CGSizeMake(300,200)];   
    [self.myPopover presentPopoverFromRect:[popbtn bounds] inView:popbtn permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

}




- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return UIInterfaceOrientationIsLandscape(interfaceOrientation);
}

@end

这是切换视图的代码:

-(IBAction)switchView:(id)sender {

    secondView *second = [[secondView alloc] initWithNibName:nil bundle:nil];
    second.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
    [self presentModalViewController:second animated:YES];
    [self dismissModalViewControllerAnimated:YES];


}

并从第二个视图切换回来:

-(IBAction)switchBack:(id)sender {
    landscapeViewController *land = [[landscapeViewController alloc] initWithNibName:nil bundle:nil];
    land.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    [self presentModalViewController:land animated:YES];


}

我希望有人可以帮助我。提前致谢。再次抱歉英语不好。

0 个答案:

没有答案