2015-03-05 24 views
5

Tôi đang làm việc để tạo trình đơn thanh bên bằng cách sử dụng SWRevealViewController trong Swift. Rắc rối là tôi nhận được lỗi sau: 'PrincipalViewController' không có một thành viên có tên là 'revealViewController'Sự cố: 'PrincipalViewController' không có thành viên có tên 'revealViewController' trong swift

Code tôi đang làm việc trên là:

class PrincipalViewController: UIViewController { 
@IBOutlet weak var menuButton:UIBarButtonItem! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // This is the line with the error 
    if self.revealViewController() != nil { 

     menuButton.target = self.revealViewController() 
     menuButton.action = "revealToggle:" 
     self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer()) 

     // Uncomment to change the width of menu 
     //self.revealViewController().rearViewRevealWidth = 62 
    } 

} 

Bất kỳ ý tưởng? Cảm ơn rất nhiều

+0

'self.revealViewController()' là gì? –

+0

Tôi nghĩ là bộ điều khiển xem cho thanh bên. Nhưng tôi đã thực hiện tìm kiếm trong ứng dụng demo đang hoạt động và không có tham chiếu đến chế độ xem đó –

+0

Đây là trang web tôi đã tải xuống mã (http://www.appcoda.com/sidebar-menu-swift/) –

Trả lời

4

Tôi vừa phát hiện ra sự cố. Có mã con trai-c trong ứng dụng, và tiêu đề bắc cầu không được cấu hình tốt. Cảm ơn rất nhiều

2

Để xóa mục này cho những người không hiểu giải thích của câu trả lời ... Đảm bảo tệp tiêu đề Bridging được kết nối với Đường dẫn của tiêu đề cầu nối C được tìm thấy trong Trình biên dịch Swift được tìm thấy trong Bản dựng Cài đặt của dự án của bạn ...

dưới đây là một liên kết cho cách để kiểm tra xem nó ở đó, nhìn dưới thêm nó bằng tay cho một bức tranh cũng ...

http://www.learnswiftonline.com/getting-started/adding-swift-bridging-header/

5

Tính đến Cocoapods > 0,36, nếu bạn đang sử dụng Cocoapods để thêm SWRevealViewController vào dự án của bạn, đừng gây rối với th e tiêu đề bắc cầu. Chỉ cần bỏ ghi chú use_frameworks! trong số Podfile của bạn. Sau đó, import SWRevealViewController vào tệp ViewController.swift của bạn. Here's a great article that explains it.

Các vấn đề liên quan