I have used SWRevealviewcontroller
in my project. At first I took a viewcontroller
named it "SWREVEALVIEWController" and set the sw_rear
to a tableviewcontroller
. And in the sw_front
part I set a TabbarViewcontroller
.
Now I have the few row data in my tableview
which i set as sw_rear
.
menuArray = ["HOME","ORDER NOW","PHOTOS","REVIEWS","FEEDBACK","RATE US","LOGIN"]
And clicking on each particular cell i set it to the appropriate viewcontroller like this.
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
switch(indexPath.row)
{
case 0 :
print("1st row")
//self.performSegueWithIdentifier("Main", sender: self)
let mainStoryboard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
let vc : UINavigationController = mainStoryboard.instantiateViewControllerWithIdentifier("home") as! UINavigationController
self.presentViewController(vc, animated: true, completion: nil)
case 1 :
print("2nd row")
let mainStoryboard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
let vc : UINavigationController = mainStoryboard.instantiateViewControllerWithIdentifier("menuVC") as! UINavigationController
self.presentViewController(vc, animated: true, completion: nil)
But After using this its going to the appropriate place but without its tabbar items.
see the screens . the first screen is
after clicking the side menu cells for example clicking on home the home viewcontrollers open but without its tabbar item. how to solve this??
And after that the sliding button for swRevealviewcontromller
not working after returning back to any viewcontroller
by clicking on cells menu...????
You need to use the pushFrontViewController
method from SWRevealViewController to change your front view controller.
Example
self.revealViewController().pushFrontViewController(viewController, animated: true)
To push your TabbarViewcontroller, you should give it an identifier in the Storyboard. Then you can use
let sb = UIStoryboard(name: "Main", bundle: nil)
let vc = sb.instantiateViewControllerWithIdentifier("yourtabbarvcidentifier")
self.revealViewController().pushFrontViewController(vc, animated: true)
EDITED
To open a certain tab
let sb = UIStoryboard(name: "Main", bundle: nil)
let vc = sb.instantiateViewControllerWithIdentifier("yourtabbarvcidentifier") as! UITabBarController
vc.selectedIndex = 1 // Your index you want to open
self.revealViewController().pushFrontViewController(vc, animated: true)
I did not test this