我需要使用SWRevealViewController将前ViewController传递给后ViewController,但我完全不知道该怎么做。
后视图中的变量如下所示:
var mainView : ViewController!
如何在ViewController前面传递任何建议?
答案 0 :(得分:0)
这是一个很好的问题。经过多次努力,我找到了一条出路。
在viewController.swift文件中,
import UIKit
//Add this line before your class definition
var homeController: ViewController!
class ViewController: UIViewController {
.......
override func viewDidLoad() {
super.viewDidLoad()
home = self
.....
}
}
在后视图控制器中,您可以访问前视图控制器的成员。
希望这会有所帮助: - )
答案 1 :(得分:0)
我在prepareForSegue中使用它来传递适合我的数据
if ([[segue identifier] isEqualToString:@"SWReveal"]) {
SWRevealViewController *destination = [segue destinationViewController];
[destination loadView];
UINavigationController *navViewController = (UINavigationController *) [destination rearViewController];
if ([navViewController.topViewController isKindOfClass:[MenuViewController class]]) {
MenuViewController* menuVC = (MenuViewController*)navViewController.topViewController;
menuVC.title = @"Menu";
}
}
希望有所帮助
答案 2 :(得分:0)
SWRevealViewController有两个属性,它们引用两个视图控制器:rearViewController和frontViewController。所以你应该做这样的事情:
class RearViewController: UIViewController {
var mainView : ViewController!
override func viewDidLoad() {
super.viewDidLoad()
mainView = self.revealViewController().frontViewController
}
}