2016-05-17 50 views
0

我有一個應用程序,它具有多個UISplitViewControllers,每個UISplitViewControllers都有自己的MasterView和DetailView。但是,我注意到,當我正確啓動SplitView時,我會看到DetailView,並且必須先導航回MasterView。我想改變這一點,並發現這與preferredDisplayMode一起工作,但設置它會導致問題。無法覆蓋SplitView中的「preferredDisplayMode」

我已經創建UISplitViewController的一個子類的所有三個SplitViews,並試圖重寫preferredDisplayMode這樣的:

import UIKit 

internal class SplitViewController : UISplitViewController { 

    @IBAction internal func unwindToSplitView(segue: UIStoryboardSegue) 

    override let preferredDisplayMode = UISplitViewControllerDisplayMode.PrimaryOverlay 
} 

不過,我得到以下錯誤:

Cannot override with a stored property 'preferredDisplayMode'

我是什麼做錯了?謝謝。

回答

1

您應該改爲覆蓋函數viewDidLoad()並將preferredDisplayMode設置爲您想要的值。像這樣:

override func viewDidLoad() { 
    super.viewDidLoad() 

    preferredDisplayMode = .PrimaryOverlay // Or UISplitViewControllerDisplayMode.PrimaryOverlay if you prefer (both are equivalent) 
}