如何将按钮添加到QLPreviewController中

问题描述:

是否可以将新按钮添加到工具栏或QLpreviewController右上方的actionButton中?如何将按钮添加到QLPreviewController中

如果是,我如何编写代码?

虽然QLPreviewControllerUIViewController的一个子类,但更改导航项无效。例如,这段代码理论上应该工作,但不会:

QLPreviewController *previewController = [[QLPreviewController alloc] init]; 
previewController.navigationItem.rightBarButtonItem = 
    [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction 
          target:self action:@selector(share)]

你可以,但是,一个工具栏添加到QLPreviewController。首先设置你的工具栏,显示视图时加载:

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 
    self.navigationController.toolbarHidden = NO; 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:animated]; 
    self.navigationController.toolbarHidden = YES; 
} 

下一步,设置您的toolbarItems从QLPreviewController代表:

- (id)previewController:(QLPreviewController *)previewController 
       previewItemAtIndex:(NSInteger)idx { 

UIBarButtonItem *testButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Test" 
               style:UIBarButtonItemStylePlain 
               target:self 
               action:@selector(testButtonTapped:)]; 

NSArray *myToolbarItems = [NSArray arrayWithObjects:testButtonItem, nil]; 
previewController.toolbarItems = myToolbarItems; 
[testButtonItem release]; 
}
+2

这并不在iOS 6,工作对我来说当启用了工具栏预览控制器将只显示下一个/上一个工具栏以在多个预览文档之间导航。设置工具栏项目不起作用... – codingFriend1