在Segue destinationviewcontroller中显示pageviewcontroller

时间:2013-07-11 17:14:50

标签: iphone objective-c ios6 uistoryboardsegue

我有一个pdfviewcontroller作为segue destinationviewcontroller,我想在其中显示pageviewcontroller。

- (IBAction)ReadAction:(id)sender {

[self performSegueWithIdentifier:@"MySegue" sender:sender];

}


- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
 if ([[segue identifier] isEqualToString:@"MySegue"]) {

// Get destination view
PDFViewController *pdfviewController = [segue destinationViewController];
}
 }

在pdfviewcontroller中有代码显示pageviewcontroller

NSString *path = [[NSBundle mainBundle] pathForResource:@"Paper" ofType:@"pdf"];
PageViewController *page = [[PageViewController alloc] initWithPDFAtPath:path];
//[self presentViewController:page animated:NO completion:NULL];

如果我使用此声明

//[self presentViewController:page animated:NO completion:NULL];

然后它不显示导航栏和backbarbuttonitem

原因是在故事板中已经设置了segue,并且不需要调用presentViewController。

但是当我删除这个陈述时

 //[self presentViewController:page animated:NO completion:NULL];

然后它不显示pageviewcontroller,只显示导航栏和backbarbuttonitem。

当我替换这个陈述时

//[self presentViewController:page animated:NO completion:NULL];

使用此声明

 [self.view addSubview:page.view];

然后它会显示pageviewcontroller,但根本不会翻页。使用卷曲效果转换来翻页。

如果我添加此代码

 NSString *path = [[NSBundle mainBundle] pathForResource:@"Paper" ofType:@"pdf"];
PageViewController *page = (PageViewController *)[segue destinationViewController];
[page initWithPDFAtPath:path];

准备segue在pdfviewcontroller中显示pageviewcontroller然后我收到此错误

由于未捕获的异常'NSInvalidArgumentException'而终止应用,原因:' -

[PDFViewController initWithPDFAtPath:]: 

无法识别的选择器已发送到实例

如果有人能指引我朝着正确的方向前进,我会非常感激。

感谢您的帮助。

0 个答案:

没有答案