[英]how to add a button into QLPreviewController
是否可以將新按鈕添加到工具欄或 QLpreviewController 右上角的 actionButton 中?
如果是,我如何編寫代碼?
嘗試在自定義QLPreviewController
類的viewDidLoad
中設置rightBarButtonItem
,如下所示:
import QuickLook
import UIKit
class FileViewController: QLPreviewController {
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.rightBarButtonItem = yourButton
}
}
盡管QLPreviewController
是UIViewController
的子類,但更改導航項沒有任何效果。 例如,這段代碼理論上應該可以工作,但不能:
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;
}
接下來,從QLPreviewController
委托設置您的工具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];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.