[英]SWRevealViewController with StoryBoard with storyboard Identifier in Swift not segue how to do that
[英]Manual segue with SWRevealViewController in Swift
在http://www.appcoda.com/tag/swrevealviewcontroller/上有一篇很棒的博客文章,其中介紹了設置SWRevealViewController,它是滑出側邊菜單的一個很好的組件( https://github.com/John- Lluch / SWRevealViewController )
不幸的是,沒有關於如何執行手動segue的快速示例。
對故事板支持采取更清晰的方法。 現在不推薦使用SWRevealViewControllerSegue,您應該使用SWRevealViewControllerSegueSetController和SWRevealViewControllerSeguePushController。
我嘗試過以下方面:
let navigationController = self.window?.rootViewController as! SWRevealViewController;
let viewController = navigationController.storyboard?.instantiateViewControllerWithIdentifier("ImportFileSelect") as! ImportFileSelect
navigationController.showViewController(viewController, sender: self)
但這不起作用。 有任何想法嗎? 我已經在網上搜索了一些快速的例子,我的下一步是學習目標c!
為了工作,您需要執行以下步驟:
最后用SWReveal推送導航控制器
let storyboard = UIStoryboard(name: "Main", bundle: nil) let sw = storyboard.instantiateViewControllerWithIdentifier("SWRevealViewController") as! SWRevealViewController self.view.window?.rootViewController = sw let destinationController = self.storyboard?.instantiateViewControllerWithIdentifier("StoryboardID") as! NameOfViewController let navigationController = UINavigationController(rootViewController: destinationController) sw.pushFrontViewController(navigationController, animated: true)
我有點進步了。 我可以加載一個新的視圖控制器,但無論如何它都沒有動畫。 單擊按鈕時執行此操作的代碼為:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier("TARGET_VIEW_CONTROLLER") as! UIViewController
var rvc:SWRevealViewController = self.revealViewController() as SWRevealViewController
rvc.pushFrontViewController(vc, animated: true)
這不是應該怎么做,但至少我找到了一種方法來做到這一點。
在TableViewController中你有slideOut菜單做類似的事情:
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if(indexPath.row == <some position> ){
let vc: AnyObject! = self.storyboard?.instantiateViewControllerWithIdentifier("YOUR_DESTINATION_IDENTIFIER")
self.showViewController(vc as! SWRevealViewController, sender: vc)
}
滿足條件的那個將使用默認動畫進行segue,而不像幻燈片菜單通常那樣。
在故事板中,執行一個普通的Reveal View Controller Push控制器,只要它不滿足條件,它就會正常退出滑出菜單
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.