swift - 如何将数据从 AKSwiftSlideMenu 菜单传递到 Swift 中的 UIViewController?

标签 swift ios9 akswiftslidemenu

大家好,我在项目中使用 AKSwiftSlideMenu 来实现滑动菜单功能,我想知道是否有办法让我可以在从菜单切换到目标 ViewController 标题时更改目标 ViewController 标题?我试过这段代码,但没有将数据传递到目的地:

func slideMenuItemSelectedAtIndex(index: Int32) {
let topViewController : UIViewController = self.navigationController!.topViewController!
print("View Controller is : \(topViewController) \n", terminator: "")
switch(index){
case 0:
    print("Note\n", terminator: "")
    var nextVC = AddSubcategoryVC()
    nextVC.categoryName = "Note"
    self.openViewControllerBasedOnIdentifier("AddSubcategoryVC") 
    print("On menu the cat is: \(nextVC.categoryName)")
    break
default:
    print("default\n", terminator: "")
} 
}

在目标 View Controller 上,我有这个变量,用于从菜单中获取数据:

var categoryName = ""

它返回“nil”。我也试过这样做:

var categoryName : String!

还有这个:

var categoryName = String()

全部返回 'nil'。

最佳答案

您已经创建了新的 View Controller 对象。

替换这段代码:

var nextVC = AddSubcategoryVC()
nextVC.categoryName = "Note"
self.openViewControllerBasedOnIdentifier("AddSubcategoryVC") 

let destViewController = self.storyboard!.instantiateViewControllerWithIdentifier("AddSubcategoryVC") as! AddSubcategoryVC
destViewController.categoryName = "Note"// You have to pass your data with view controller witch will open
let topViewController : UIViewController = self.navigationController!.topViewController!

if (topViewController.restorationIdentifier! == destViewController.restorationIdentifier!){
    print("Same VC")
} else {
    self.navigationController!.pushViewController(destViewController, animated: true)
}

关于swift - 如何将数据从 AKSwiftSlideMenu 菜单传递到 Swift 中的 UIViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36802502/

相关文章:

ios - 我可以在 Swift 5 和 IOS 12 中以编程方式更改 iOS 屏幕壁纸吗

apple-push-notifications - 在 iOS 9 中注册通知

uiwebview - iOS 9 在 WebCore::FrameView::contentsSizeRespectingOverflow 中崩溃:

ios - 带有 Swift 滑动菜单的空白菜单按钮

swift - 线程 1 : signal SIGABRT, 无法识别的选择器发送到实例

ios - 如何根据选定的单元格将 segue 推送到特定的 View Controller ?

ios - CLLocationManager 和 CMPedometer 的距离有什么区别

ios - 以编程方式打开连接到导航 Controller 的 View Controller

xcode - 场景类的更改导致错误,Xcode/Swift