У меня есть следующий вспомогательный классдействие UIBarbuttonItem не работает на всех
class PDFPreviewHelper {
var pdfNavigationController: UINavigationController!
func previewButtonPressed(rootViewController: UIViewController) {
let pdfViewController = PDFViewController(resource: "final.pdf")
pdfNavigationController = UINavigationController(rootViewController: pdfViewController)
let backButton = UIBarButtonItem(title: "Back", style: UIBarButtonItemStyle.Plain, target: self, action: "backButtonPressedInPDF")
pdfViewController.navigationItem.setLeftBarButtonItem(backButton, animated: false)
rootViewController.presentViewController(pdfNavigationController, animated: true, completion: nil)
}
func backButtonPressedInPDF() {
pdfNavigationController.dismissViewControllerAnimated(true, completion: nil)
}
}
вызвать функцию в выше вспомогательном классе в моем RootViewController как следующее:
func previewInPdfButtonPressed() {
let a = PDFPreviewHelper()
a.viewI129InPDF(self)
}
Я успешно модально настоящее pdfNavigationController
на вершине моего rootViewController
, но всякий раз, когда я нажимаю кнопку back
, ничего не вызывается. Почему это так? Я установил точку останова в функции backButtonPressedInPDF
, и она даже не попала в точку останова.
вы уверены, что вы звоните 'a.viewI129InPDF (Self)' – Johnykutty
@Johnykutty, да, он действительно показывает PDFViewController. – Kahsn
, но в вашем 'PDFPreviewHelper' вы написали' previewButtonPressed' как метод – Johnykutty