2016-04-22 12 views
1

私はAKSwiftSlideMenuをプロジェクトのスライドメニュー機能に使用していますが、メニューから先に進むと、目的のViewControllerタイトルを変更できる方法があるのだろうか?私はこのコードを試みたが、先にデータを渡していません。AKSwiftSlideMenuメニューのデータをSwiftのUIViewControllerに渡すにはどうすればいいですか?

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: "") 
} 
} 

私はメニューからデータを取得することで、この変数持つViewControllerを先に:

var categoryName = "" 

をし、それが戻っています'nil'。

var categoryName : String! 

と、この:

var categoryName = String() 

すべて返す 'nil' で、私もこれをやってみました。

答えて

0

新しい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) 
} 
関連する問題